{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "import geopandas\n",
    "import numpy as np\n",
    "from sklearn.cluster import AffinityPropagation\n",
    "from sklearn.cluster import KMeans\n",
    "from sklearn import preprocessing, datasets\n",
    "import matplotlib.pyplot as plt\n",
    "import csv\n",
    "import os\n",
    "from sklearn.metrics import pairwise_distances_argmin\n",
    "import pandas as pd\n",
    "from scipy.spatial.distance import cdist,pdist\n",
    "import itertools\n",
    "from mpl_toolkits.basemap import Basemap\n",
    "import math\n",
    "from scipy import stats\n",
    "from scipy.sparse import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'/Users/qiancao/Documents'"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "os.getcwd()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "g = open('worldcities.csv')\n",
    "csv_f = csv.reader(g,None)\n",
    "next(csv_f,None)\n",
    "\n",
    "XX=[]\n",
    "for row in csv_f:\n",
    "    row[0],row[1],row[2] = float(row[0]),float(row[1]),float(row[2])\n",
    "    XX.append(row)\n",
    "\n",
    "XX = np.array(XX)\n",
    "X=XX[:,[0,1]]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## I. plotting the sites status quo\n",
    "#### Finding outstanding sites, like Indonesia has sites plotted in the ocean"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 160,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x864 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(12,12))\n",
    "mm = Basemap(llcrnrlon = min(X[:,0])-10,llcrnrlat = min(X[:,1])-10, urcrnrlon = max(X[:,0])+10,urcrnrlat = max(X[:,1])+10)\n",
    "mm.drawmapboundary(fill_color = '#A6CAE0',linewidth = 0)\n",
    "mm.fillcontinents(color = 'grey', alpha = 0.4, lake_color = 'grey')\n",
    "mm.drawcoastlines(linewidth = 0.5,color = 'white')\n",
    "\n",
    "plt.scatter(X[:,0],X[:,1],s=80,cmap='viridis')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## II. Clustering w/ Center of Gravity Model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 161,
   "metadata": {},
   "outputs": [],
   "source": [
    "## delete following"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 206,
   "metadata": {},
   "outputs": [],
   "source": [
    "rng = np.random.RandomState(2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 207,
   "metadata": {},
   "outputs": [],
   "source": [
    "i = rng.permutation(X.shape[0])[:5]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 208,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[-44.095  -22.5196]\n",
      " [-44.57   -20.06  ]\n",
      " [-37.34    -5.19  ]\n",
      " [-39.02    -4.97  ]\n",
      " [-60.62    -3.2896]]\n"
     ]
    }
   ],
   "source": [
    "print(X[i])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 209,
   "metadata": {},
   "outputs": [],
   "source": [
    "from numpy import array"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 210,
   "metadata": {},
   "outputs": [],
   "source": [
    "Y=[]\n",
    "Y = X[i]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 211,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "numpy.ndarray"
      ]
     },
     "execution_count": 211,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "type(Y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 212,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x864 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(12,12))\n",
    "mm = Basemap(llcrnrlon = min(X[:,0])-10,llcrnrlat = min(X[:,1])-10, urcrnrlon = max(X[:,0])+10,urcrnrlat = max(X[:,1])+10)\n",
    "mm.drawmapboundary(fill_color = '#A6CAE0',linewidth = 0)\n",
    "mm.fillcontinents(color = 'grey', alpha = 0.4, lake_color = 'grey')\n",
    "mm.drawcoastlines(linewidth = 0.5,color = 'white')\n",
    "plt.scatter(Y[:,0],Y[:,1],s=80,cmap='viridis')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 179,
   "metadata": {},
   "outputs": [],
   "source": [
    "labels = pairwise_distances_argmin(X,Y_array)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 180,
   "metadata": {},
   "outputs": [],
   "source": [
    "while True:\n",
    "    #2a. Assign labels based on closest center: if 5 centers, then labels have 0,1,2,3,4\n",
    "    labels = pairwise_distances_argmin(X,Y_center)\n",
    "    #2b. Find new centers from means of points\n",
    "    new_centers = np.array([X[labels ==i].mean(0) for i in range(5)])\n",
    "    #2c. Check for convergence\n",
    "    if np.all(Y_center == new_centers):\n",
    "        break\n",
    "    Y_center = new_centers"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 181,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[-41.48092264,  -6.05162264],\n",
       "       [-49.537803  , -20.353152  ],\n",
       "       [-42.19167353, -18.36268382],\n",
       "       [-51.66391077, -28.05258308],\n",
       "       [-60.15171042,  -5.624475  ]])"
      ]
     },
     "execution_count": 181,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Y_center"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 182,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAq4AAAKhCAYAAACRqSzTAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAIABJREFUeJzs3elvXFma5/fvXWMPBoNkcF9FUiQlaslMqTKzsqprqrsH457xjGEbAzSMeTF/lWHAwAwMjBtjw2Mb3W33VI+7qzKVq3bu+74vwdj3e69fUFJKJa4SyQiSzwfJJBm8EfeRSEX8eO45z1Ecx0EIIYQQQohKp5a7ACGEEEIIIU5CgqsQQgghhLgUJLgKIYQQQohLQYKrEEIIIYS4FCS4CiGEEEKIS0GCqxBCCCGEuBQkuAohhBBCiEtBgqsQQgghhLgUJLgKIYQQQohLQT/NwX/1eFG22RJCCCGEEGfmLx+0Kyc9VkZchRBCCCHEpSDBVQghhBBCXAoSXIUQQgghxKUgwVUIIYQQQlwKElyFEEIIIcSlIMFVCCGEEEJcChJchRBCCCHEpSDBVRwp5Na5UeMpdxlCCCGEEBJcxeG6wm6CZFmcn+Negxe3Lj8uQgghhCgfSSLiPaaucrfBy+rSIkNTc+zEEjx6OsSNoErEb5S7PCGEEEJcUxJcxTvq/AY9VRrfPRtiMxp7c3vJsvj2xShKNsbNWg8n3pvtLS5dgq8QQgghPpwEVwGAAtys86BmY3z7fIRiyTrwuMn5FaZnZrj7AVMH2qpctAZ01A9JvUIIIYS49iS4CjyGyt0GD5NT00zOrxx7fDSRYnF1jVsN/lOdx1Qsno5O0xmWxV5CCCGEOD293AWI8moOuvApBb55MoRl28ceH/R5uNvXw27e4elK4sTnCXsN1re2iaXSGFYeQ1MoWs7HlC6EEEKIa0aC6zWlKQp9EQ9rq2uMrm0ee7yha9zr6wbDw+hOFvuUmbPBr/PD5P55Xk7Ocvf2ABPb2Q8pXQghhBDXlATXayjo1ums0nkyPEY6lz/2+P7OVmpqa5nZzZErnT5saqqClc9hO/tpN5svUMyk8JommcLBc2mFEEIIIf6YBNdrpqPajZJP8/XjUY4bNG2sqaa3q52lRJGRzcwHn7M5aJJIRLnZ3kww4EfTNLwuA7ejMvoRjyuEEEKI60WC6zVhaCr9dR6m5+ZZ39k78liPy+STgV6SlsrLzY+/nJ/MWzRGGthOF5hN5rEdi4E6k3hsl6A7QCJX+uhzCCGEEOLqk64C10CN16AvrPPj86FjQytAXbiKaEFlKXb8NILjBN06rUGDnc11vKUUA3VuGgImiqowPrdMZ8jE1OTHUAghhBDHkxHXK0wBemo9pON7fPN08cT3W1rf5lctzawnP/zcXkOjK2wSjUZ59GT5zfxWgOa6Gho7mgF4MTZFZ0sDHo8HVdNJFh1200XSMvdVCCGEEH9Egusl01Zl4jMUUBQURQEUirZD0XIo2Q5FG0q2g+NAW1BneHKG3fjpE+jOzi5Bd/DUl/FdusqNsJtMMs4PzyYoWe+32Frd3mV1exeAeCrNi4nZN18LBbw01dXSFvajaAZ5W2EnUyKRLR47J1cIIYQQV5sE10tEAfyazXfPRt+5zTB0TF3HNPbfXIaBrus8mt48MDiexNTiKp9/WsvoCYOrrircCLux8hmevhwmX/yweauxZIZYcunN5x6XSWNdmN5wNZpuYCsqu1mLaKaIddqeXEIIIYS41CS4VhhV4dAeqQ1BF/Mry+/c5gCFYolCsQRn2BbVsm0yqSRuwyRXPPyyvapAZ9iDYecZHhs/UXut08jmC8ytbDC3sgGArmk01IQYbGtiJm6RysuUAiGEEOK6kOBaQRoCJrUuh2LJQtV0FE0jWXCIZUsk8yVq3ArjJ1hcdVbGZhe5P3jrwI0CFKAt5MavW4xOTRNLpS+kppJlsbK1y2Y0xqd3B2UTAyGEEOIakeBaAVQFbtZ62d7a5NHy2pvbFSAU8BEJh2gKBVjf2LrQuvKFIk4xj64qlN4aBm4MmtS6FSbnFtiKxi+0pteKJQvFKqKAzH0VQgghrgkJrmXmNTV6wybPRidJpN9txu8Ae8k0e8mLGc08yPjsAj29vczu5qj1GTT5deaWVhjf3ClbTa8trKzRUN/KevJspycIIYQQojJJA80yqvUZtLgtvn788r3QWikS6Sx+3eF+ow9Su3z9+AUrFRBaAdZ39qjxyI+wEEIIcV3IiGuZGJpCgxsePZ8sdynHmp5f5rcP7/CPPz4rdynvSadSuHSDfOnDuieUm6qApipoqoqmKK8+3n9TFdCU/WN0RXlz7Ov3CoDj4OC8mi/hvPrPAcfB0FUaw/stzX5a3Dt00Z8QQghxWUhwLZO+Wg+PX46Uu4wTidSEmdlK0RypYXVrt9zlvGNqYZn+/n5mdk+3SEthv+es29Bw6Soubf9zQ1VwbBscGwXIOSoLe7kzD3199X666wKUSiUW1ndIZTOULAsrX6Jk2eSt/feWZe2/t+39r1v2m88d5/2iVEWhtaGW5oZ6io7K9/N7JPOypa4QQoirQYJrGTQGTFbW1sgViuUu5VgBnwfTF2BiK8Xd9paKC67pXB6Xst8SS1cV3Ia2H0Y1MDUFt66gOOA4No5jg+3gODa2bZPNZ8mks8SzebL5AtlcgULp3ZAXCvi41d1J1tHONMBObKaY2EwRdOvU+9wEgyaFfI7VjS02ovEDQ+lR6kJVdLU1optuNtMWY7sFoPJ/voQQQojTkOB6wUxNpdq0+W51s9ylnMj9/h5GXrWcWk/bdDTVs7BWWbXPLq1ws7GeQrFEJpcik8gRy70Ko/nCO9vNnlYsmebb5yPnFmATuRKJXAlTV2mt8vL53X7GZpeYXFw99r5+r5uethZ8fh+xvMN0PI/tSHswIYQQV5cE1wvWW+vm8YvhcpdxIt2tjWxk7DchbStV4G5zY8UF142dPTbOub/teQTYgFun0W+gY5HJZJidWeRp8vhFeqqq8KcP7xHN26zEC+S3ch9ehBBCCHGJSHC9QE1Bk5XV1Q/eDvUimbpOQ0M9I5vvjuCtJEv0tDUzvXT8iOBV9H6A1VnYy54owCpArd+kzquDVSS6F2NoZPPUU0Zs22F5cwfdF7q0i9KEEEKIDyHB9YKYukpItxhbu9hNBD7Uvf5upnff74+6mykyWF/H7PLaR12Cv+x+DrB+BrrbyTnGgQFWVxUaAiZVLhWrUGBta4MfJ3ax7I8LnBPzy/R3QXMwxGqi8FGPJYQQQlwWElwvSHPQZHhqqtxlnEikuoqC6iJfOvgS9FK8SF9nK2NzSxdcWeWJJVN893z0nQC7lS5S79dxqw65bJbFpXlG4skzP/f43DK3bqg0BYOsSXgVQghxDUhwvSD5koPbNEhmKnvxjKIo9Hd38nLz8DrjuRJt9TVoCysfPXJ4VbwdYBvrwkxMbJLOnv+OXqOzi9zubqcxGGRdwqsQQogrTrYduiCZok3A7y13Gce63d3OfPz4ADS/l+dWd/sFVHS5xJIpxueWLiS0vjYys4ieT9EYMI88TlcVPIZ2QVUJIYQQZ09GXC9IulCi2VfZwdXnduEPhljePn5UOFWwaI9UYegaxZJ1AdWJowxPz3Onp5OOcBVFy8ZnqOgKOLaN41g4tk2hWMS2LALhEDPRPLmifN+EEEJcLhJcL0jRcnC5XOUu40hej4tM6eQLruZjBW73dPJ8fOYcqxInNTq7SHOkhlQmSyqTe28zhdcMXeNeXzdO0MNsNMs1XmMnhBDikpGpAhdIUSv7r3t7L4FftdBU5UTHZwoWHk9ljyJfJ5qmUlvlJ5pIHRpaAYoli8cjk8zOzDBY5ybiNy6wSiGEEOLDnWrEVVcVSme9afspGZpCX62bYrEIioqiKKCooCgUSg4F2yGRKxHPVV6vVEWp7OAKMDQ5Q39fH1M7J1tEZttyublSFIolAl73iY/fS6b4+slLbrQ2MtjQwEw0R7Yoi+2EEEJUrlMF1746DyObx+/sc17cusrNGpMfXoy818RfAVymgdtlEgmHuF1XQ6qksBzPY5U5bL+hVv7CmGQmh1PI4tLVEzW3d6SrQEXRNBVNVU/V7WF2eZ3FtS3u9d1AqfIyu3uyDRWEEEKIi3aqIcDF5RVaq8ozTzPo1ugJaTx6OnzgzlMOkCsUiSXTTC2u8ujpEItzs3QHYSDiIeAq73TekFvHVC9HGng5OcuN8PHfZ11VKJxy1ydxvvbiSSLh4KnvV7IsnoxOMTU1ze2ITP8QQghRmU4VXJc3tvE4eTzGxV3ydukqfXUevmivZnhq/lQjSXvJFD8OTfDT82H8VpLbETctVS5OOIXzTCgK9NZ68Dtp/vD45cWd+CMUiiWS8dixYb/GZ5JMpy+oKnES2/EUTTWhD75/PJU+cn6sEEIIUU6nTqBPx6a5WePmvLOf19QYiHhocZeYmJpmNZbh3sBN3ObpF5KULIvxuSUePXnJ1uoiN0MafXUefOb5XroPujXuRNxMTk0zMr1wruc6a6Mzi3SE3v+7VhVoC7m4XeeCdJS5lY0yVCcOsxtP0Ryp+ajHuMDf64QQQohTOfX1c8u2GZqYpqe7+70FPDfrfJgazEZzZAoftmgn6NZpCxokEwkev5ikWLL41aeDTOzst+35/N4tvnky9ME7Nm1F42xF45iGTl9HK12RKnayNuvJs2sYrwDdNR4K6QRfPx7jckwQeJftOKxtbFLnr2E7XcRvarRWmTjFPNOL8wydwxam4uNl8wX8Hje6plKyPnT+sURXIYQQlemDJn5GEyky8T3CngDR7M9zHFcTOWrVHHUqBCJBlhJFEidc3V/jNWjy6+xEo3z3bBn71eqQvs5W1jMORWv/85m9In/2+T1+992zdwKhqihUB33EkpkThdpCscTQ9DwArfW19Le2ML718dux+l0a3dUmQ5MzROOpj368cppdXuefPKyn3qext7fHk5erstnAJbAbS1AfrmJ1e+/DHkByqxBCiAr1wSuWRmYXeTjYR73PhaKq5EuQLdlEgmF+990TVFXhZkcr7fVh1pIldjMHL+JpCJjUeVTWN7Z4NLH+3uikqijUGBY11RqKolAsFNjezfIXX33K/No2wYAfRdNA0UgXHW6ZNo+ejmCfoqv68uYOtuPQ3dzKzO6Hh9cbNW7sXJqvH4+f6vyV7A+PX16ZP8t1sR1L0FQT+vDgKoQQQlSoj1pq/9PwxJuP3aZBwOsh6/WgALbtMD63hDK3RFdLA4MN9WxnbTaSBRSgJeQmZDosLK8xsblz6DnG5pbeu62nrQlPziGm+lnbs4CfRwF3DI1f3r/Fo+ejOKcIXKtbu7hMg7ZwhKXY6aYNeA2N3hoXo9OzbO8lTnXfSieh9fKJJtL0dzR9+AMoMuQqhBCiMp1Zj6hcoUiuUGQ79m5wc4DZlQ1mVzZoidRwq2X/BXVmYYHhaPxU51BVhQe3+4hbOqNbB69mzxQt5pPw5d0Bvn0xeqrHn1vZoN80aAyGWE8UTnSfjmo3einL10/G30xvEKKcXKZOIplE1zRKlkztEEIIcXVcaHPTla1dVrZ2P+i+fq+bz273MbVbIFM8OlSm8hbLisbnd/v54eX4qc4zPrfMvZsGtT4vO+nDe5S6dZWbtW4mZxfY2JVLsqJy+D0uxqZm+aS3m4WNHaKJ1KkWaikyyVUIIUSFKm9X/hNqa4zQ2tLM0GbmxDv6JHIWKjoPB/vemdJwEi8m53g42EfRrR+4dWxbyIXbKfDt05cfsXJbiPOhOA5rm9vEkykitTX0t9RhmiYBv4+Z1S1WtqJH3t/QNUIeA1NXcWkKLk3B1BQcx0FVHHYyNpupk12REEIIIc5SRQdXBbjf303J8DL6AVvNxnIlVNXgs1u9PBmdOtV9fxqe4Jf3b1GyNdJvtfbqrfWwurLM6geOHAtxHgJeD12NtZi6yvzi/rxwy7JwmSYu0wRVZW5tm43d2LGPtb6xgWpZJLM5tgpFcvkC+ULxzcLJ9qYId5qbmYvlSeVlKoIQQoiLo5xmAdP/+H/87sImcbpNg4d3+llIlEjkPu7Fsc5n4HOyvJiYfed2j8skmz985EhVFL76dJCpaJFcaX9ktSvsZmpyklQ291E1CfGxXKZBV2MtfrdJPB5ncnYBv89LZ1szbreHgmWzvLXHXvLsdzdTVYXB7k68wSpmdrNv2tUJIYQQp/WXD9pPPEetIoNrQ001vTc6GNvKUjqjBU8Rv0FILWI7DoZhYpgGAVPjbx89OfJ+uqbx1aeDjG7nKFoOfpeOv5RgYn75TOoS4jQ0VaW9oYbaoI9MJsPc4jJVwQBNDREUVWcvmWZ5e49C8WK2bfW4TO71dZPFYHEvdyk32xBCCFFe5xZcXyxsOo5ts/9mkc3lSKYyJDMZkpncmbxY3u7pwPRVMRc9+xFNr6mRL9lYtkN/xMPQ6Djp7PGtr1yGzhefDDK8kcVyHPrDGt+/GDvz+oQ4iAI01VXTVFNFqVhge2cXv8+H3++n5MDaToztvURZQ2Okuor+7k5WkyV2DunZLIQQQhzkNMH1VHNcx7ffDZMu3YOvKkBDjUKXoWKo4Dg2O7u7TC+unuahAQj6PFSFwoxunv2lTeDNNrR1foPd7e0ThVaAfLHE45djfHbnFkMbaVTNOJf6hHhbTZWf9voadAVKpSKlYhFNN/BVhVnaipJZO3qR1UXa2ouz9fgFve3NDNZHmInmyBZl4aIQQoiz9VGLs/Ilm3zp/TmityN1zC6vnbqvaSKdpZBN4zHUc3vR01WFejc8GjtdsE7n8rwYm+ROfy+Jgk2V30s8dfoFY0IcJeD10NVUS8jnwet2sZdIUbRsNhJZNnZjFd8reGpxlbmVDe7e7EKr8jEbzWFVeM1CCCEuj1NNFfirx4snOjjg0gnYScZm39/16jiaqvLVZ3d5uXE+ofB2vZcnL0fIFT7scmZddZA7/TfZ3NpmZGbhbIsT15LLNLjRVEdXc4Qqv4/FtS32UhmWt6Ik0h++BXG5Bbxu7vR1Ey+qrMRPtxudEEKI6+PcpgqcVDJfoqM+jDq3/N6Woaau43IZJA95QbZsm4mZeTpb25nfO9t5rhG/yfr6xgeHVoDtvQQTM3P0d7YwMnOGxYlLJRz00VQTYm03RjRx+qktuqZyoznCJ31dBLxeppfWGJ5dYXV778rsdpXM5Pj22QhNdWHudHYwvJlGdhAWQgjxMc6tj+tyokRvezMTCyvA/uhL/40ONNONYhf57vnh27FuRmO0NkbwGjqZ4tm9iCdyJW7UhpldWf+ox1nd2mX7lNvVissvHPTR395MX2czuXyRlc1tBrpaSKazrO3ssbC+Q/yIEVIFaI6EeThwg/qaamZX1vndj0PsxlMX94cog7XtKKlMjru3+hjeOJ/560IIIa6Hc5kq8NpgvYep2QW621vIo7Owl6NkO9yqc/Pt05dH3ldVFX792T1enPGUgRqvgc9KMzQ9f6aPK66m6oCPgc5m+jpayBUKjM0uM7Wy8WZhn6FrtEXCNNaEaGusI57KsLy5y/z6NsnM/hWD2qoAn/V30tncwMbOHj+NzbK2Hb12raPqqoPc6OpiYvvyTn8QQghx9s6tHdZpg2vApRHy6KzE8u+8SHeFPUxOHt+Kqq46SGt755m3xmoPuYhurbO8sX2mjyuuBk1VedDfxe3uNnL5AqNzy0wtbZDOHf3zqmsqrZEaWiLVdDTVk87miIRDJFIZHo/NMre2hWVf75X2LfW11Dc2M3sO7e6EEEJcThUTXA9T5TEwM1Gml9eOPfaT/m42i+Y7266ehYGIl5HxSRJp6QwgflYXCnC7qxlDN3g0NEXmmLB6GE1Vqa+pYjeWJH9BmwFcFt2tTXhCtSzLgi0hhBCcLriq51nIYeLZIjXVVSc6dmVzm64a95nXML6d4ZNbNzF07cwfW1w+qqJwt7uVao9OPl/g98/GPzi0wv4iw7XtPQmtB5hZXsPJJoj4pR+yEEKI0ylLcAVQ9aNftAxd4+Htm7S0dTCyfvYLOhwHxndyfH534MwfW1wuVX4vn9/qYnJyCrdpMra0QaEkgfM8jcwsECBPtefc1ocKIYS4gsoWXEuomPrBL1pdzQ18fv8Oy1mNuej57X+eL9ksJW0+6e8+pzOISjfQ0URLtY9/+OZ7wqEQqaJNLCnTRy7C07Fp2oMayokvEAkhhLjuyjbcsZu16GlrJJbK4HWZuN0u3C4Tt9vNVsZhePNiwkM8VyIQ9NDV0sDcysaFnFOUn8/t4m53CyNjE2zuRAlVBWhobODZ1GK5S7tWcoWS9HYVQghxYmULrtFMgcZAGI8rRN5ySJYs8kkbJ3HxCzZWEgX66huIJ9PsxpMXfn5xsToaagl5Tf7w7Y+ULAtD1/n07iDfj86Vu7RrZ3/K0NXYcEEIIcT5K9tUAceBtUSOnXSBRK5IrmSXdeRlYjvL7ZvduExZMHKVqYpCTcDN90+ev9mh6suHn/B8epnTdNgQH89tGhRtmScghBDi5MoWXCvR2HaWz+8MoMikuyurNRJmbmHpzef3bvexsLlHNl8oY1XXU31NNbtZGW0VQghxchJc31K0HGbjRR7c6i13KeKc1FcHWNvc33iipbEexXCztZcoc1XXU6Smmlh2/xeGjrCnzNUIIYS4DCS4/pFU3iLhmNxsbyl3KeKMuQydbHZ/0Z/f6+FGVycTi+tlrur6MgwT24EbYQ/p3U3uNPjQ5GqHEEKII0hwPcBGskAgXEN9OFTuUsQZ6mqOMDEzj6qq/OLT+zydlA4C5aIAaBoBl46VSzK9vM7ToVEGGzyYmjwtCSGEOJi8QhxiZjfHze5OvG6z3KWIM+J3GSSSKT7/9B7D86tYtl3ukq6t6qCfVMGhK2TwcnK/m0M6l+e7p8P015h4DdnRTgghxPskuB5hdCvL/X6Z73oVVPk8RPf26O/pYieZJZnJlbuka62xLkyNz+Tl+PQ73RwKpRLfPB2iM6DIrlpCCCHeI8H1CJbtYNnSIukq6GyqYy8WJxgKs7wVLXc51159TZidnW1iqfe3c7Ydh29fjBLWCjQE5IqHEEKIn0lwPYbjyOXkq8DvMrjZ283Q7HK5SxFANB5neHrhyGOejk2jZGO0V7svpighhBAVT4LrEXRVoVgslrsM8ZGa66ppaYjIYqwK8mJy/kTHjc8tE99a52attMsSQgghwfVIbkMjncmWuwzxkW51tfL3j4cpFEvlLkV8gIX1Lebn5xls8KJKtywhhLjWJLgewW2opCS4Xnq/+3GI3Xiq3GWIj7C1F+fF6CR36r3okl6FEOLakuB6BI+uks7J6nMhKkEyneH7FyPcjrhx6/LUJYQQ15E8+x/BoytksrKHvRCVIl8o8s2TIXpCOkG39HoVQojrRholHkFX9/tKCiEqh2XbPHo2zIPBPhoDXmzHQUFBVUBRQFXg59awzuv/eOsD3vrgzcHOH33+znEOOAfc5/UXdU0nh85CNIflSAs9IYQ4LxJcj+DIzkpCVCQH+Gl4Apeh4zj7vV9tx8ax34mXF6rK72Wgu4OCYkqAFUKIcyLB9QjSw1WIypavoE4R8VSG71+MEfR5uNXTSVExmd/LySYmQghxhiS4HsGRFxwhxCkl0tmfA2x3J0VVAqwQQpwVCa5HcaxyVyCEuKQS6Szfvxwj4PNwW0ZghRDiTEhwPYSuKhQKlXMZUghxOSVfjcAGfB5uywisEEJ8FAmuh/AYGulsstxlCCGuiOTrEVjv/ghsSTWZkwArhBCnIsH1EG5DIxWTXbOEEGcrmXkdYN3c6unEUt3M7+UoSYAVQohjSXA9hEdX2M7KrllCiPORzOT44eX4zwFWczMflQArhBBHkeB6CLeukM7ly12GEOKKex1g/V43t3s6sTU3cxJghRDiQBJcD6GrUCxJVwEhxMVIHRBgZ3dlIwMhhHibWu4CKpXsmiWEKIfXAXZ8cpL+iKfc5QghREWR4HoICa5CiHJKprOsrK7SHHSVuxQhhKgYElwPIdu9CiHKbWFtC79axK3LU7UQQoAE18NJcBVCVICno5P01brLXYYQQlQECa4H0FWFfKFY7jKEEIKSZTMyNUN3jYRXIYSQ4HoAj6mRzkgPVyFEZdiJJSmkEoTc7zaCcckUAiHENSPPegfw6BqpTKbcZQghxBtD0/O0BTU0VXlz26fNfgYiXt66SQghrjQJrgdw65CRzQeEEBXmycgEfXX7LbKqPAZTCysMjY4zGHETdGtlrk4IIc6fBNcDKIpCXXVVucsQQoh3ZHIF1lbXaAqa1Pt0lja2SWVzfP34JW0Bo9zlCSHEuZPgeoDFvRxqoJZff3aH2lCg3OUIIcQb82ubBNUSHg0KxRIADlAs5FFkyoAQ4oqT4HqIrVSB4a08re1dfHF3AK/bLHdJQggBwJPRSabmF9+5bWMnSrVHRl2FEFebBNcjOMD8Xo7puM2dWwPc7u4od0lCCEHJslnf2XvntvWdKLVe/ZB7CCHE1SDB9QRKtsPkdpZgwFfuUoQQ4kCFYgkd2ThFCHG1SXA9ofqAyeLqRrnLEEKIQ1mlAjLNVQhxlUlwPaFaj8bq1m65yxBCiENtbkep9so8VyHE1SXB9QRCbp29vb3jDxRCiDJak3muQogrToLrMRQF2qt0RmcXjz9YCCHKSOa5CiGuOgmux+ip8fByfKbcZQghxInIPFchxFUmwfUIAZdOPp0glkqXuxQhhDiRrd09QjLPVQhxRUlwPYQCdFUbDE3Nl7sUIYQ4sbWtXepknqsQ4oqS4HqIrrCH0alZHMcpdylCCHFieZnnKoS4wiS4HsBnapBPsRNLlrsUIYQ4NZnnKoS4qiS4HqA7bPJ8YrbcZQghxAeRea5CiKtKgusf6ax2MzEzjy1TBIQQl5TMcxVCXFUSXN/iMVR0K8dmNF7uUoQQ4oPJPFchxFUlwfUtvTVuno9Pl7sMIYT4aFapKPNchRBXzrW+lqQANT6TOq+G4lhMzMxTsmSUQghx+W3tRqny1xHLFstdihBCnJlrF1y9pka9z8Cjg1UssLG1weOpKCXLKndpQghxZta2o9ypb5TgKoS4Uq5FcHXrKl1hF1gl4skkM9OiietCAAAgAElEQVRbJDPZcpclhBDnJl8oYsg8VyHEFXMtgmu112Bmdo6tvUS5SxFCiAvzep6r9EgRQlwV12JxVskGXdPKXYYQQlyo7egeVR7p5yqEuDquRXC1bAfDkCdvIcT1Iv1chRBXzbUIrkXbxpTgKoS4ZnKFIj5DwaVfi6d6IcQ1cC2ezUqWg2HIVAEhxPXzw4sRWtwlBiIevPI8KIS45K7FNaSSbWOa1+KPKoQQ78gVijwdm8bQNfq72glWB1lKFEnkSuUuTQghTu1apLn9Eddr8UcVQogDFUsWQ1NzqIrCzY4W2utrWE+W2MlIn1chxOVx5dNc0G0Q8ekUM8lylyKEEGVnOw7j88so88t0tTQw2FDPTtZhPZkvd2lCCHGsKxdcPYZGg9/Aq+/3MNzd22N0cZtsvlDu0oQQomI4wOzKBrMrG3zSd4Ow10NURl+FEBXuygXX3hoXz0YmZGcsIYQ4IY/Xy9yO/HIvhKh8V66rQN5yyOTkkpcQQpyE3+Mm70i3ASHE5XDlgmuyYBMO+stdhhBCXAo3O1tZiskv+0KIy+HKBddY1qI2HCp3GUIIUfFURcHt9VGw7HKXIoQQJ3Llgmu6UKLK7yt3GUIIUfE6mxvI2gp+l46hKeUuRwghjnXlgiuAol25NWdCCHHmtqIx9jbXGKgx6Kj2lLscIYQ41pUKrpqiUOc3qfK5y12KEEJUvGQmi8s02cw6TO9kyl2OEEIc61IPTWqqQo3PoMatoTgWxXyB9e01/stkrNylCSFExbt38wZ5w8viXq7cpQghxIlcquCqqQq1XoOwR0exSxQKeda3VpndjWHZsrhACCFOQgEeDvaxU9TYTUj/ViHE5VHxwbXWZ1Dr1VFti3w+x/r2FjMSVIUQ4oOoqsKX926xlLJJ5ErlLkcIIU6l4oNrs1/jm6cvsW2n3KUIIcSlZuo6X9y/xVS0QLYov/wLIS6fig+uRUfBkcwqhBAfxeMy+cW9W4xt5aRvqxDi0qr4rgLxvE2N7IQlhBAfrMrv4+Hd2wxvZiW0CiEutYoPrrvpIk31teUuQwghLqVIdRV3+nsZ2kxjyZQrIcQlV/FTBXIlG1/QW+4yhBDi0mltqKO5uZnhTenRKoS4Gio+uAKoulHuEoQQ4lLpaWsiEK5jYjtb7lKEEOLMVPxUAYBMCQI+2Y5QCCFOYrCnE1dVLXNR2VhACHG1VPyIq6mpVJmQzUmTbCGEOM6DW73EbRdb8Xy5SxFCiDNX0cHV0BQG6lx892yEkmWVuxwhhKhYqqLw+d0B1jIQk1/0hRBXVMVOFdBVhVt1Hr57PkKhJLu7CCHEYRTgq09vs5hyiJ1gNyy/S8djaCjK+dcmhBBnqSJHXHVV4Xa9h++fj1AoSmgVQoijdDTXs5ZySBeOvzIV8ug0uCyS6QzegBtV1VBUFRQVRVFRVJWi5ZCzHHIlm1zJJluwKEkrLSFEBai44Kq9Cq0/PB8hXyiWuxwhAHAZOu0NtQQ8LlDAdsC2bWzbwXIcLMvCth1sx8Gy7P33rz63bRvr9bFvPrax7FfH2vvHC/GhmhvqGdk+fk6rArQHDb5+PMpRP3GmoeNzu/C6Xfi8Hmo8blyGAerP4RZFxQFyJYd8aT/oZgslciXZ4EAIcX4qKrhqqsJgvYcfX4ySk9AqysxtGnQ01hJwm2SzWWbm59mLJwBQFAVNVVFVFU3T0DQVTVXRNBVV1d58rGn7HxuahqZp6IaKqpromoqqvT5u/z0KgIJhmowvbpDMSBsjcbzqgJ9U6WTX/LvCHkamZo8MrQCFYolCscReMn3kcaqq4HW58LpNfB4Pn3W38+1iXLbpFkKcm4oKrjfCHkYnZ8nmZWGBKK+73W10tzYQjcWJJ9MYpkn/zR7gVb6Ed17837/N+fm2U76IO5bFvRtNZPIlxhbX5d+DONLNzlamY8ePtnoNDQppduPJMzu3bTuksjlS2RxqPElTU6OEViHEuaqo4Dq7m2Wwt4tvngxh2XK5SZTPy5klXs4sleXcqqLQ01pPXZWfh33txNI5RufXpLOGeI9p6CiGC8s5fnS+p8bFoycT51ZLZ1MD6ylZkyCEOF8V1VXAchwmd/N8fqe/3KUIUTa24zC5tMH3o3PsJDKEfB6+GrxBf3sjqiwDF2/p62xjMX78iHxbyMX0/OK5Dgg0RGqJZk4/xasx4EJT5edaCHEyFRVcAbJFm4LmorOpvtylCFFWlm0zOr/Kd6Oz7CWzNNVU8eu7vXQ11ZW7NFEBFCBYFSRzTCcBU1fxKUXWtqPnVovP4yLvaO/dfiPsZiDipTHowtDeD6eGplDrsrgZ0mivdiPxVQhxnIqaKmDqKr01bra3t5hf2yx3OUJUhGLJ4uXsMi7TYKC9kd7WelojYaaWN1nfjZW7PFEmbU0RNlPHTx/pq/Xww/Ohc62lt6OV5T/aqcvv0ihmEjyfXqCuuoqW+lrcbjeKphPL2WynizQGDEamZ9lLpolUVzF4o53NjMNmSuZ1CyEOVhHBVQE6qt2YToGfXgxL71YhDpAvFHk+vYTXbTLQ3sSD/k6iiRRjC2tEE0ev/hZXT2tjPSPbxwe8vWyJ3vYWRmYWzq0Wn89PPv3uPNvOkMm3T8exHYfNaIzN6P4vWYqiUBcK0Fxfh1vhTeeCrb04W0+GaG+McKeliaVEkVj24NcCBY7tjCCEuJoU5xRLQP/q8eKZP1dUe3TaggZjM3Ns7yXO+uGFuLL8Hje3OppojoRZ295jeG6FdE72p78OQgEvnV09zO/lDj2mMWhS6zUY3khT5zOo1ks8Hp4488DXVBemKtLMevLnEF3jNVAzUaaX1j7oMRVFoa+zhZqaGmajebLFn+fm9tV5SRUsVuLysy7EVfGXD9pPPFOobHNcdVVhIOLBXUzwh8cvJLQKcUqpbI4fx+f4h6djaJrKf/XFXT692Y7LNMpdmjhng703WDokuAVcOncbvKR21kkm4rh0le10kYRj8mdffHLmtXQ0N7KRfHfktyWgf3BoBXAch/G5ZX54NkyDUaS/zoOhKVS5dYqZJF5j/6XLZ74/r1YIcbWVLbjWB0ymZ+cYn1suVwlCXAmxVIZvh6f5/fNxgl4P//KX9xnsatnf1EBcOf1draxn9ndme5upqQxEvIRI883jFyxv7DC7vMbn7SH6qjW0XJwXEzNnWoup6zia8c4obnOVi+mFs2klV7Isnk/M8GJkjK6AQmeVzrPxGXQFQm6d+40+qj0VMeNNCHFByvYv3nm1ZaYQ4mzsxJL84/MJGmuquHOjjd72RoZnlple2eQ0U4JE5QoH/QRCNUzt/DyfVAE6wm5Mu8CzoZF3dh1MprNo2Pzwcuxc6ulub2LprXZcqgJh02H0jDsYZPMFfhwa//kGx6a9yuBvv3nMV58OkiqoFC15PRHiOijfkIyyP49JCHG21nfj/OefhvlpdJa+9kb+m19/Snt9TbnLEh9JU1Xu9HUz/VZojfgNBiMulubn+HFo/MCtsuPpLI21oXOpKRwKkX6rHVdHtZuRqflzOdfbAm6d0en9rWt/HBpnoM79ztdrvAZeU0Pawwpx9ZR1xFWRrn1CnJvlrSjLW1G6mup4MHCDOz1t/DQ2x2Y0Xu7SxCkZusaD2zeZ3M3jsL99a3fYZHV9k6/H1o+87/OJWR7e6mV95/mZ1lQd8JEsKXgMjVzRQtcUTKfAXjJ1puc5yD/89JJiaT8wF4olxmfm6W7vIJYt0RTQiVR5SeVKrCfzLB6xgE0IcfmUb3KQIyOuQlyEubVt5td36G1t4M8fDjI6u8Tz6fJsZytOLhTw0dFUj9fnw1Y0lhNFipZNX52HXDrJt08nTrQTVjSRxus2z6wuBWipr6W3s5WJnTwDdS7ieQddU0nFdvF73aQy5xsWX4fW17aiMYK+LRzH4elilP/61w/59tlzBgf63jnO1FR+0RZkeCN1aKstIURlK9+IqwKSW4W4GI7jMLm0ztrOHr+530euUGR88eiROnFxQn4vuqbh87hpjNSiGSapIqynCuR39ueQtoVctPrg5ej4qdueJdI5GmtCH7VhRSjgo6e9BdPtYTtj8XI9y+16D394PMRgTydbtgtVC9DTE8KjK5gabG7vMj5/MQtwZ5b3uxjUhoL8zdePSWVzOPbPAVdXFQbq3Pzuu6d8fm9QgqsQl1R5pwpIchXiQiUzOWZWt/CZGl1NEebWtspd0rVmGjr//W8/p8rvZX59G5fLzVYyRyxvEc9ZFEo2YY9Oa9Bgcm6Rod29DzrP88k5PhvoZv37000XcJkGvW3NBKuCpEsK8/E8pcT+HNs7DT4eD41SsixeTs7yqwd3GdrIYmoKPkNjL55gfnXjg+r9GDuxn1srOvZ+OFUVuB3x8MOLEfLFEgurq9SH6mWHLiEuIQmuQlwz4wtrfHnrBkY6Q0tdmJVz3MNeHExVFf7pL+7Q2VTPX3/zhJWtn78HuqYSCvioCVXxp3e6+WFkhj88Xvmo8+3Gk/jcJqqiYB/TYUJVFNqbIjRF6rA1g0TBIZqzWU/+fPm/t9bD+PTMm5Ff23EYnZplsLuThZV1Ho1tf1S9Z6VULKGrKrciXh4Pj75ZvLa4tsWvmxrZSskOXEJcNuWb4ypTBYQom+H5NTrqAhi6QzEcZDMqG4BcBAV4MNDFp/3dfPdygr/7/uV7x5Qsm51Ykp1Ykt9+OsDU4uqBj1UfrqK9PkzJslCAmlCQaDzJO7lU2f9fLJlmay/Bl5/dw3ac/fZor94cx8HUVVy6hsvQ0XWNZDZPOpsnl02QSaboaG1hPbkfUlurXOxsbby3acxOLMnXT4bO5O/prETjcR50dfD9sxHS2XenV0zMLtDe1sGCLN4S4lKRrgJCXEPJTBZLDbM0P0/PjU4KRevNnvHifPS2NvCnD+8wsbDC//R//j22ffxY3+LGNp1NEeZWN9/7WiKdJZ1K8eTlCAB//ie/JB6PMTQ29c5x/T1dlFSTkdklBvr6SBZK+A0FFAfHtnEsi+1Emr14klgy/V5LrZ62Zub39kNf2GugFlLMrVz8FIAPsbYVJZZME0u9/7O9tRenp8NCU5X3NnMQQlSu8gVX9i+XCSHKY3x+lS9u9fP7b3/gq88/Y2zRIpW9uqNPmqryi4EustkMr4Yi0VSV271dpLI55pbf3qJU2T/k1ZSmXLHE7OrWgX1Sj9NcW80/+/I+u7EE//5vfk82f/J5ld8PTfHPf/nJgcE1my/g9fneXP7PFor4gyH8Xg+pzP481HCoiqrqMC9n9hdILS8tkMzkSKQyx04ZeK0hUsvwVg6PodLgdvjuxdyJ6y+3XKF45PdsaHKW/r6b72zoIISobGUccXVkjqsQZeQAowtr3B8c4JsfnvCbLx/yYnb1VMHqsngdWn988uxNqOtobaKzvZ3/9Puf8LpN2iNhtra3mZieey/U+X1e+nq68Hl9rEcTrGxFj50bWVsV4Def9OMyTf6vP/zEbvz0/U33kmkCPs+hX1/Y2KW7q4O1jU3SuQIzK1t8dm+Q33/3E7quc//OLb4fmX1z/PLm7qnO31ATIppz0FWF3rCLb56+P7XhMsvk8lS5tXKXIYQ4hbKOuEpwFaK84uksrZEw4aogX78Kr48nFimUrk6rIF1T+UV/Fz+8Cq3BgJ9PBm+xvpfkh7H90cNEOsvGbpyaKj+/+vIXxGJ7jE7MULL22yml0hmevNi/JH+jvZW+jibGF9YOPF+Vz8NnfZ20NNTyzfNx5tY+bqFSNl8g4HWTPKA36nYsycP+DhzbYjuWomRZrEWT3Ghvo7mxnufTyx+1+OhGewvju3kG6738+GLkRNMbLgu/x81ng32MbGbKXYoQ4hTKt+XrKee4fnarB7/XffyBQohTGZ1f5e7gALZl8ejHJzzoa0dTy/fUcJZeh9bvnzwjly/w8P4g/X19PJlaYunV6OPNtkZ+dfcmv7nfR3dTHaVSiab6en7z5YMDHzOdyRzYR9XncfGwv5M/fzhIPJ3hP/zdo48OrQA/jEzzi9s9h359N57m1s0eoon9Ed3lrSj3Bvsp2HzU6Lnf6ybv6Nys8zI0Mf1B0yQqVUt9DXdv9zO0mSVbPH4TByFE5Sjbq5PlOFQFfCc6trWhFsf00d/Vfs5VCXH9OMDYwjr3BwfI5Qv88OQ5D/s7L/0VkTeh9fEzGusjfPXFQ+a24gzNLr+z49TU0jovZ5aYW9smVyyhKCr5YpFCscStm9001NVg6D9fnKoKBkmkfx79dJkGn/S28Ul3Kx6Xwe+fjfNkYoGSdTaBaHJxjZ7WxkO/Pr++Q9Dv2+8U8Mo/Ph3jy7t9h97nJPq72lEUhZWVFfYS57+N60W529tFTX0zo5sZHAeCbp3WkAufebIpA7VenfrA2e1EJoQ4nbJNFYhni3iDfr765DbPxqbI5A4eGXCbBh1trQxvZBiIeNA19cxeEIQ4iqFrGLqOaWiYur7/ufbzbYauoSkKyWyeqeXLscr6MLFUhpZINTXVVezuxXk2NMyD27f4aXy+3KUBEA76+Ysv71OybcbmlplZ2SRzxO5Ruqbxi/5OJqZnePjpXZa29vhx7OBFRQ77UwUS6eybUdjfftLPZiJJKBgkUluDaehoqsrIxDQDPV00Rmpxu/bDi2VZjM4uEk1mGF9cP/Gip5N6HUgVRXknnL5mOw7/+z/8+M5t2XyBycVVfnGrmx9HZ059Tl3TaKgNs7C6zvJGZfRk/Vi6pvGnv7iHousk0jn6wwaWVSLo1bFVg7X40aPTCtBT6yEZ2yWVznK7pYlkUWE5nuMKzaAQouIpBz0RHuavHi+e+T9PXVXoqXUT34syNvv+/um/+nSQiWiRouUQcOkErCRjc7LPujidulCQhpogPrcLj8tE17RXwVRD13WM18H01eeaqlIslSgUSxSKRUoli+W1Dcan58jl8+QLRYrFIpZt09bSSH19IyPzB/fbvCwUReGLgS7+4dH3OI5DpCZMd083z6cWy1pXc201f/HVJ/y/3z4nky/Q39FMT2sDHrcLx3HYisaZXt7fznYvkUZVVX51p4dcPk8iW2B8Ye1UYdJl6HRFQjwbHqWuppo7twberE5P5wpkcgXSuTzZXP7Cmtf/2YNBVrejjC+c7mfs3/6L3/Dv/ub3pz7f7e522hsj/O03j09930rlMg3CAT+7iSSFYglVUfj0Vi9ZTFYSR4dWt67SV+tmaGL6zZQMgNpQgN6ONoqqwcJejqIlCVaID/GXD9pPfImv7MH1tZBbp73KYGRqlt14EoD+rlaKrip20j/PrbodcfPoydVa2SrOV1NtNf/qTx7wYnKOTK5ANl+gWLIo2TYly6ZYKlGyLIql/bdSyTow6NRVB2mPVGOVikzPLrAd/Xn7zc7WFsJ1dYwdsmDnsggFvDQGPTwbHgOgpamBxsamsoXy3tYGfv3JAP/pH38kmni/F6emqtSGAvS0NtBcFyZcFQBgbHaJxxNzh17JOUpddRCtmGV+aYVfPvyUF3OrZV+U5PO4+Nd/9iX/7q//8ULO99/+9nP+7rvnR45qX2YBn5dPb/UyFS2QKVhHHtsYMKnSSjwemXxnisnbfB4XAzc60F0eFuPHP6YQ4l2nCa7l2znrj8RyJeK5El1dXXQWssyvrFNVXcPE9rv99RxbnhDEyfk9bv7Vnzzg3/31P3704pLtvQTbewl0TaWjpZWBvl7iiTgT03PML6+gqAp97Y1MLK6fUfUXL5bM0FoXJhwKEo0lWFnbwGWa9LbWM7X8fi/R8/RZXycDXa38r//50aEB1LJtNqNxNqPxN7eZuv5RXRFCPg9LCxuoqoqq6WUPrQDpbB63aVzIuQZvtDE+t3xlQyvA7e4OhjazR17iVxXoq/OyubnBD8tH/5tOZ/M8HpnE1HUGbrThjwRZSZaIZa/OgjYhKkVFLR12gNndHKs5jZu9PUz+UVPoGp/B2ubVmG8lzp+p6/ybv/g1/9t/+e5MV0SXLJuZlU1+mlhgNZbl3t07/PrzByytrJGK7dHb2nBm5yqHkflV7g/efrM4a3ZhiVI2Q0dDzYWcXwH+9LNbdDTW8Ve/+/bUo6Yf28rL73WTSKbobG1meXvv+DtckGQmS+iEC1o/RltD7Xvbo141jqIcGVr9psadeg/DYxPMHhNa31YolXgxOcd3T1/iyse4U++hQRZyCXGmKmbE9W3Zos3Y5vuXBRt8Ot9PbJWhInHZqIrC//DPvuK//Pjygxq/n1Qqk+PlzDI+j4tP7gzw0/Nhbt5Q6W6JMLNyOX9WHcdhfGmDe7f6eD4yDsDo1Az3BwdorAmxvhs7t3Nrqsq//NUnZHIF/tPvH5/5QqeTUB0H23Fobmrk8WR55/e+7duXk/zyzk3+9ttn53oe5dVOXFeZohw+ZtMWcmFaOb5+PP7Bfw+24zC5sMLkwgqt9bUMtjRRQOX1w73eNFJRDmoK6Rzwznnvyxw0w9qBkqIyt5vDuuLfQ3F9VWRwPYimKJQKuSv/hCrOxj//5X0mF1eZXrmYy9vpbB5Fd1EV8DM5O09/TxddTRHm1i5neN1LpmmNhAlVBYi9mnP+fHiMzz+9S7EUYOfVbWfJZRr86z/9gumlNX74gJXwZ8XBwe0yKVZY95L5tS3+2Rf3zv086iHdC66UA/oU66pCf52HheVlljd2zuxUy5s7LG/uYOj77bYcx8Fx9t+fx+tZwOfhzs0bJEsqS7GrPXIurqeKmipwlKYqF7OLl3vhi7gYn9+6gaoqfDc8faHnHZ1f5f6dWwCMT89BIUtnY92F1nCWRuZW+OzeHdqaGtBf9TH94elLOupDBI/YhvRD+D1u/u2/+A1PxmbKGloBHNumt6uTufWzCy9nJXoB/VQVhSs/QPDHI65VHp2BWpMnQ6NnGlrf9mbxp2Vj2fa5/R0n01m+fTbC1uoyd+vd1PouZm60EBfl0gTXKgN24olylyEqXE9LPX0dLfz1o/O9nHoQy7ZZ203Q2dYC7F9eV638hc0NPWu24/DD6By6v4oHn9zjq88f8MVn91lb3+R+dwt+jwtNVdFUFVVV9t+Ud9+U129w6D55daEA/+Yvfs3ffPOE8TL/cupxmWSyGULVVSTS2ePvcMH+499/d+7nOKxf7FXhMg0Kb7Wt6gq7CZHl6ydDH7XTWKXZ2N3jD49foqSj3Kn3nHiDBSEq3aWYKuAxNJLJs780eZ2oisJn/V1s7yXYiMYPfIL2uEwaa6q40VxPY10Yn8fN//x//38US5ejk0OkOsif/eIu//5vfl+2leDLW1E+H+hiaXUNy7IZmZjmzsBN2iJhlraiZanptO71tKHYrxc4KaAoKDg4toNuGNy73U/Q5+XfdHeyuLqBoes0RmpwHIdEOsNuNMZuLEHJeusxeCu4vp7fh4Kua9zt7+GvfveIWLL8e8YHfR5syyaZvToB5rRUVa2ITgrnxesyyZVsTE2lv87N5OwCG7uVswjvrE0vrTG3ssHtng7a6oLMRvMUKmwajBCncSmCa2uVyXCZLx9edrbjMDSzxO2uFv7JZ7d5OTGDoqqgqLTW1xIJhyiUiqxvR5ld2eSH0Rmqg37+8p/+kv/l//m63OUfy+9x8d/99nP+499/W/ZRk9GFNe7fHuDJyxEAhsYmuXe7n5a6MCvblR9edQW+efz8yGPCoSpudneiGybL2zE2X41w+71uwkEfYb8X3TBxbBvLstjd22Nnd49YIvlmNM/rcfPlg0/4D3/3qOzfs9eqfB4iVV5+mry+m5xc9TmuXrebgMckZNh8/3yYQvHjulBcBpZt83JyDrdpcLevm5LmZj4qO36Jy6nig6upqZhYFfPCdllpqkpnUx3hgJfhiddzPx1UReH7kWl2Yon3ttJNZnIUSxY3muuZXb24Hp6vd7UyDX1/i1VDx9BUDE1F17U3W7G+nufi4DDQ1cbffffswCb1Fy2ZyaE31RH0+0ik0nzx6V0WV9ZoiERoqg2xtnN+q/I/VijgJRo9OFy7TIObN7oIVVcRS+UZWdyiZL07Gp/K5Ehlciyx++Y2VVUI+X20tndwy+veD0WOjely8eP4wnuPUU7/P3t3+hv3lef7/fNbaq/ivomkKO6kRFGUZcnutqd910ySCyS4mRsECQLkQYAAyV8UIMEgAfIgCG62O5jcDJKZuTezdk+3e2zt1C5K4r4vtf6WPJDttiyJIqmqOlX1e7/QHnablPjxiK761KlzzjeXTqjih5EoM+9jWWrp4hqGoQ62N3T7UePcGFEvxXJFv7p5Tx25rOanx7RVsrS8zwEuNJeGLq592Zj6EtLf3bpnOkpT6+nI6cbFcR0c5fV0ZVNrO/sn3r/3L//sb/Vf/fN/qv/u//jT906NqRZL0n/yT3+utmxa5XLlh3GrFc9TsVRSvlD87q+89gsllctlVTxPqWRC5Yqvpw10mOb2k1f69MqcHj15pr2ir46ePrW35TTWnlMYhFr50YX5jeR8b5du3b79xt8bGTqnC+eH5IWWnixv6OHa6Z7wgyDU9v5hXQ4WfazOtqwe1nnQQqNp9euwlje3tbzZ+O981NLuwaH+8utbGu7r1sLoeS3tV7STj+6LNTSXhiyutiVN96S0s7mpv7r70nScpre5e6D/+2/PNibX8wP92d/d1B/8o8/0L//sl1VO9qZrM6M6yBf0v/zp3771Odt6vR/SdWy5jvP6r3hG8ZSlwLKMjSR9Hz8ItLZ7pM8+uaI/+dUtSdLTlU0N93bpn/3eNeWLJf3Zr29rfaexDhwmYo4KxZLac1nNTo4rkUppeWtPXz948a5bI1tOMpHQi7WtD39hC7NbvLjid16ub+nV+pZmRs/rcn+PHm8XVaiw/xWNreGKazbuaLIzrt/efaD9I/OHNSA9eLGqn1+Z0XBft16u1+ZJvSOX1vVLk/of/vjfvvPzQRh+twJbk29fE89XN7X1k1XGlxvb+sM/+jc619Op3//8ihzb1l99e9FkFPMAACAASURBVF9Pljc++u1ZS++8kvyDYq6j0YFe9XZklIy5+urnn+mwVNH9V+uRe8v8yau1yJc2y27tPa54Uyjp/rMXcl8s68r0mOIdWT3aKspjAywalHWaB6j/+dfPa/qTfKEjKdfL6+/vPYr8k0ejScRc/Zf/4T/Wg+evtL1/qIN8UaWKp3LF++5jRaWyd6btBLZl6b/4Z1/pT//uVlMcXqqm7vasvrwyre72Nv32/mPde7ZyppGlMyMD+sc3rkiS/vRXN/Xw5eqxX+/Ytkb6u9XbnlFXW1Z+GGpr90BPVjcb4nQ/zPnP/73f0x/95dc6aMDrwFB76WRCn1yc0loh1CbbB1An/9mNC++7MfEtDVFcY99dS/L42ZJe1WhFDx8vl05poKtNnbmMcpmUEjFXiVhM8XhMiXhMgR+oUCrpMF/QYb7ww4G6g0L52AlWX16ZViIW059/fade/ygNpz2b1rXpUV0Y7NX9py915+krHeSLH/x1vR05ffXJRUnSv/6bb+T7gf79L65qsLdL/9df/1ZLP7pM3bYsDfV2aqCrTYnvDr8dFkpa2z3Ui7UtXixCkvQv/tHn+pO//UZHRQ7tRNm1i5M6UFIbR030NheaVlMV155MTOfSlv7u5j2VIva2ZKtJJeLKpBLKfPcxlYhJodTX1aZ7z1b07B0TaXo7cvqP/uHn+sM/+vOaH/5qBplUQvPjw5oYHtCL1U09fLmmla23byHIpBK6Mj6s0cE+fX3/qR68eHOFNRFz9c//wQ11tef0//32rtJxV5YCubalILR0VKro8fIGt3XgLWfdcoLWszA9rlIso9UDHidQW01RXK3vDmDt72zp3pMX1fpt0YAujw2ppz2jO89WtLH75iCJ+YlhfXHlov74L3+jV5utewn4aaUScc1eOKexwV5t7uxpZWtfj1+ty7ZtXR4bVGc2LT8M9fWD5zoqvH9lLJWI66urs9rbP5AXBHq2tq3NXYZ5ADiZy5OjCpJtXJuFmmr44pqOO5ruSuibew+0e2D+3k3U3heXJ6Ug0LdPXr31FmRHNq0/+Eefa2vvQP/qL35jKGHjyCQTmjrfL9eS8vm87iw+Ui6T1uzUxHcjVKWjkqc7z8yORwUQDbNj5xXLdurFHuUVtXGa4lr3WwVGOhJKBCX9xW++aemxgnjT3z9c0sL4oBYmhvXrxWdvjJG9Oj2qRDymr+8/NZiwcQx0t+vpkyda3fjdfu9iqaTKvUV9ujCvu0srHKACUDf3n77Q1EigCx3der5LeYVZ9oe/pDoc29L8QFo7a8v69e1FSmvEFEplvdjY087ujm7MjsmyLI0P9um/+Re/r2K5ov/2f/t/anbVVrNZ3d5TX0/PG39vfnZaF2dn9Mu7TyitAOru4dIrHWyva7wraToKIq5uK66ZuKuNjQ29WGuc6Uaor1ebO+qdGtGrV8v6r//g39HW3oH++//zT98aNRt1R4WS2oZ7JUmZVEqfXVvQk9VNPXrEXnAA5jx5uaoLfqDJgXN6tPXhW0+AWqhbcd0vVjTU1S6JSVhRdvPRC81PnNf/+Mf/lhPtx7BsR9Pjo+rv79dvHizJ8/0P/yIAqLHnK+vyA18zQ+e1uMldv6i/uu5xtdwYV61EXBCG+vbRkukYDW9991BhLKXfLD4zHQUA3vBybUu+F+ji6KjubbB1CfVVtz2ukrRTDNTf3VHPbwk0paW1rchNEQPQPFa2dvT4yRPN9aVNR0HE1LW4rh+WdX6gv57fEgAA1MD6zp7uP3yk+f60TnyXEfCR6lpc/SBUPJmo57cEAAA1srV3oFv3Hmh+IC2L9oo6qGtxlaRiYCtDeQUAoCXsHh7p7+8s6kp/WjblFTVW9+K6eljRhUG2CwAA0CoOjvL6za27utKfUTLmsHUANVP3yVlHJU8Xutvq/W0BAEANHRVK+tW3tzU5MqhkW0K2bcuybcmyX4+rtm15gVTyQpWCUMVKoKIXqFTxuW0IJ1b34ipJclzZtsX0LAAAWkihVNath8/e+3nXcZROxpVKxJVOJdWTSinVFpdtO7IsW7Jfl1zZth5uFuXRE/ATRorrZt7XYE+3Xq4zRQsAgKjwfF/7RwXtHxUk7b3365LxmH72yWXdWivIp7ziR+q+x1WSNo/KGhro+fAXAmgonh9oaSuvB2uHWtrKM64XQE0UyxX96ps7mu/jwBfeZGTFNQglJ8bNAkDTCKXFtQMtrh7IkiU/DOVYlr55sauZgZxm+nPiNAaAaiqUyvr1rTu6Pj+nW2tHYuEVkqEVV0nKe1JbJmXq2wM4he9Lqx9IXhAqDF9/9ANpcfVAi2sHpiMCaEFHhZJ+e/ueLvdnTEdBgzBWXFcPKxodGjD17QGckOcHP5TWd/m+vHoB2wYAVN9BvqDl5RV1pGKmo6ABGCuuxYqvbDZr6tsDOKHl3aKsD+wDsGRpeadYp0QAomZpbUN9GTMXIaGxGPsp6MvEdXBwaOrbAzihohfID4/fXOaHoYoeK67AWXh+oOXdoopeoKRra7AjKdcxtq7UkMoVT654jIGh4tqViqnNKuo3D5+a+PYATiHp2nIsS94x5dWxLCVdnmiBU+HQ46mUigW5tsPdrhFX92eatqSjvoSv39x9WO9vDeAMBjuSCj8w1yZUqMHOZJ0SAa2BQ4+n82JlXX3ZuOkYMKyuxdW2pPmBrH518149vy2Aj+A6tmYGcnrfO5eOLc0M5OTarLgCJ8Whx9Pb2NlTR5LHmair609AEEr31/P6xfUFZdOszgDNYqY/90N5dW1LlvX64/eldaY/Zzoi0FQ49Hh6oaTQq5iOAcPqvsd1K1/RTqGiyxdndbC7rTuPl+odAcBpWa8L6kRv5s1DJJ1JVlqBM+DQ49ns7u0rm2jTYckzHQWGGHnGCULp/kZBeTenr64vqC2TNhEDwCm5jq2R7rSm+7Ma6U5TWoEz+v7Q43E49Pi2pZV19We5FivKjP4bsVPwdHujqNmZac1PjXJ4EgAQCRx6PJujYkkJi1sFosz4S7kglB5sFrRvZ/TVjQV1ZBnrBgBobRx6PDuvUpbNSldkNcy/EXsFTzfXi5qantLC9LisD7yFAgBAM+PQ49ksr22oO8O1WFHVUBtFwlB6uFlQWzKlr64v6NbiI23vM10LANCCOPR4JiubO/rs/HltUA8iqaGK6/f2i55uFj1NTExopHCom4tPFHzg9CUAAM3o+0OPOBk/CGQF3CoQVQ37ki6U9GirqC0/qa9uLDC3GQAASJIOj464cSGiGv5P/aDkaXGrpGsXp0xHAQAADWBpeU39jH+NpIYvrpJUqAQq2gkN9XabjgIAAAzbPcwrGzOdAiY0RXGVpKXdkibGRhRzHdNRAACAYT7jXyOpaYqrJC1uFnV9btp0DAAAYNja5pY60yy7Rk1TFdeSF2jPj+nCuT7TUQAAgEE7+4fKxnkXNmqaqrhK0vJ+SeeHh5SINeRNXgAAoA5y6aTylcB0DNRZ0xVX6bstA5dnTccAAACG5LIZ5cu+6Rios6YsrhU/0GZJmjx/znQUAABgQDaVUrFCcY2apiyukrR2WFH/wIBSCe5xAwAgaizHETM1o6dpi6skLW4UdH1+xnQMAABQZ5bd1BUGZ9TUf+peEGrlKNTs6HnTUQAAQB1ZFjcKRFFTF1dJ2jyqqLOnR9l00nQUAABQB5ZlSay4RlJL/KkvbuR17RJbBgAAiIJMKqECV2FFUksU1yCUXhx4ujw5ajoKAACosVwqqbzH0awoaoniKkk7BU/ptg61ZzOmowAAgBpq4w7XyGqZ4ipJD7cKunpxSpbpIAAAoGaymbTyZc90DBjQUsU1DKWnexVdHB8xHQUAANSI67oK2CkQSS1VXCVpv+ipu6vLdAwAAFAjlsNVWFHVcsVVkjYKvob7ekzHAAAAVdbf1aFySHGNqpYsrqsHZY0OnzMdAwAAVFHcdTU7OaYn20XTUWBISxZXScoHttoyKdMxAABAldyYn9W9TUprlLVscV3aLeni+AXTMQAAQBXMjA5rvSSVPQYPRFnLFlcvCGXHk4q57IMBAKCZdWQz6uzu0cZhxXQUGNayxVWSnu+VNTt63nQMAABwRrZt6eqlaS1uFkxHQQNo6eKaL/tq72g3HQMAAJzR9UvTerBVUsi9rVCLF1dJWs8HGhnoNR0DAACc0oVzfcpbCeUrjHfFa61fXA/LGhkaMB0DAACcQjoZ1/nhIb3cK5mOggbS8sVVko48Wx3ZtOkYAADghG5cvqh7G+xrxZsiUVyX9kqa4WosAACawpXpcT3f9+QHbGzFmyJRXP0glBVLKO66pqMAAIBj9HW1K5bJabfomY6CBhSJ4ipJS3tlzY5zNRYAAI0q5jq6ODmux1tMx8K7Raa45su+2traZZkOAgAA3umzy7O6z0hXHCMyxVWSVo98XRjsMx0DAAD8xPSFIW2UbJUY6YpjRKq4bh6VNXyOq7EAAGgkbZm0unp6tX5UNh0FDS5SxVWSDj1Lnbms6RgAAECSbVm6NsdIV5xM5Irr0m5RM2Mc0gIAoBF8emlKD7fLjHTFiUSuuAahpFhCiRhXYwEAYNL5gR6VnKSOyox0xclErrhK0vPdsi6Oj5iOAQBAZKUScY2eP6+lXUa64uQiWVwLFV/ZXJssi8uxAAAw4cb8LCNdcWqRLK6StHLoaXyo33QMAAAiZ35qVEv7vjxGuuKUIltct/IVnevnTlcAAOqpt7NNiWwHI11xJpEtrpJ0ULHU3Z4zHQMAgEhwHUeXpib0aIstAjibSBfXF3tFTY9yNRYAAPXw2fyMFhnpio8Q6eIahFLgxpWMx0xHAQCgpU2NDGqrbKvISFd8hEgXV0l6vlPSLFdjAQBQM7lMSj19/Vo7rJiOgiYX+eJa9AJlsznZXI0FAEDV2ZalTy/NaHEjbzoKWkDki6skvTqsaHz4nOkYAAC0nGuXpvRopyxuvkI1UFwl7eQ9DfT1mI4BAEBLGe7vVtlJ6pCRrqgSiut39iqW+jrbTccAAKAlJOMxjY2MMNIVVUVx/c7LvaImLwybjgEAQEv4bP4iI11RdRTX74Sh5NkxpRJx01EAAGhqlydH9fIwYKQrqo7i+iPPd0uamxw1HQMAgKbV05FTKteh7QJXX6H6KK4/UvICKZ5STwdjYAEAOC3XcTQ3PamHjHRFjVBcf+LxVlFz0xOybe51BQDgNG5cntbiFoexUDsU158IJT3cKuvaxSnTUQAAaBqT589px3NVrHD1FWqH4voO+YqvipPUuZ4u01EAAGh4uXRSff0DWj0om46CFkdxfY/nuyVNj19QzHVMRwEAoGFZlqVrc7O6z0hX1AHF9Rj3N4u6PjdjOgYAAA3r2uyEnuxWGOmKuqC4HqPkBdrzHY0N9puOAgBAwxnq7ZYXS+ug5JmOgoiguH7A8n5ZQ0ODSsZjpqMAANAwEvGYJsZG9JyRrqgjiusJ3N8o6Mb8rOkYAAA0jM/mZxnpirqjuJ6AF4RayYeaGR02HQUAAOPmJka0fBSq4rOxFfVFcT2hzaOKurp7lUsnTUcBAMCY7vacMu1d2soz0hX1R3E9hcXNvK5xywAAIKJcx9b8zKQebrJFAGZQXE8hCKVn+56uTI+ZjgIAQN1dn5vR/c2i2CAAUyiup7RX8JTItqurPWs6CgAAdTM+PKA931XRC0xHQYRRXM/g0WZBV2YmZVuW6SgAAHw027Y0c2HovZ/PpBIaGDinFUa6wjCK6xmEkh5ul3Xt0pTpKAAAfLSFmQkNDQ0qk0y89bl4zNWN+YuMdEVDoLie0VHZl+emNNDdaToKAABn1p7NKJbK6tbKgS5Pj7/xuVwmpS+uzevORpGRrmgIFNeP8GynqJmJUbmOYzoKAABncmlyVI+2Cqr4oUI3oWzq9bWP/V0dunppVjdX89zXioZBcf1Ii5tF3bg8bToGAABnEsr6YTX1yXZRl6fHNDF8ThdGR3VrLc9KKxoKxfUjFb1A+35Mo+f6TEcBAODULOt3VcALQhUVU7qzVw+4qxUNiOJaBa/2SxoeHlIyHjMdBQCA0/nJDTnPdkp6sVcyFAY4HsW1ShY3C7p+malaAIDmYnG1I5oIxbVKKn6o9aI0fcw9eAAANByKK5oIxbWK1g8r6unte+c9eAAANJqY68jj9BWaCMW1ykp+INvm/60AgMYXj7lcdYWmQsOqsqQV6CDPSUwAQONLxGKqsOKKJkJxraL2VEwbW9umYwAAcCLxmKtKYDoFcHIU1yoayrl6/GLFdAwAAE4kEWfFFc2F4loltiUF5ZL8gJeuAIDmkIjHVfF53kLzoLhWyblcQk9fstoKAGge8XhMFY/iiuZBca2S7UJF5xn7CgBoIolYTGVWXNFEKK5VUqgECmIp9Xa2mY4CAMCJOI4jtriimVBcq+jJdlGXJscZnwcAaAo8X6HZUFyr7MluRVemx0zHAADgwyiuaDIU1yo7KHmKZ9rUns2YjgIAwLFYcUWzobjWwOOtghYuTpqOAQDA8SxqAJoLP7E1EITSi31Pl8ZHTEcBAOC9WHFFs6G41shOwVN7Z7cyqYTpKAAAvBvFFU2G4lpDD7YKujF/Ua7jmI4CAMBbWHFFs6G41pAfhLq3WdLvfTqvmEt5BQA0DsuyFIYUVzQXimuNlbxAdzdK+vLavOIx13QcAAAkSXHXUYXpA2gyFNc6KPuB7mwU9cUn80rEY6bjAACgeDxGcUXTobjWScUPdXu9oJ9/clmpRNx0HABAxCVcVx7FFU2G4lpHXhDq9lpBn1+dUzpJeQUAmBOPuSr7plMAp0NxrTMvCHVrraDPrlxWJslVWQAAMxKJuLwgMB0DOBWKqwF+EOrm2pGuX5lTNp00HQcAEEGJWFxln60CaC4UV0OCULq1dqRPL19SezZjOg4AIGLi8ZgqHiuuaC7cz2RQEEo31440PT0lu1LUzQdPVCiVTccCAERAIu6qUqS4orlQXA0LQ+nhZkExx9bC5UvyiwXdevhExXLFdDQAQAuzbVuh2CqA5kJxbRAVP9D9jYLirq1P5i+rXDjUrYdPVa54pqMBAFqSLYlrBdBc2OPaYMpeoHsbeb0qxXR9YV6fzE4yLhYAUHWWxbhXNB+Ka4MqVnzdXc9rzYvrs6vzWpgel+vwxwUAqBKKK5oQTajB5cu+7qwXtBEk9bNPrmh+alS2zYMNAODjsOKKZkRxbRL5sq/b6wXtKqMvri3o0viIbB50AABnxXMImhDFtckclDzdXi/o0M3py+sLmhkdFg89AIBTo7iiCVFcm9R+0dOttYLKyXb93o2rmhoZNB0JANBELIsKgObDT22T28m/LrBBuktf3biq8aF+05EAAA3OsW0FIXe4ovlQXFvEVr6im2sFOe19+urGgkbO9ZqOBABoUPGYq7JPcUXzobi2mI3Dsm6uFZXqHNBX1xc01NttOhIAoMEkYq48pr2iCVFcW9TaYVk314tq7x/UL64v6Fx3p+lIAIAGEY+5qgSsuKL5UFxb3PJ+WbfWi+oePK9ffHpFfZ3tpiMBAAxLxGOqsOKKJuSaDoD6eLlX0itJI+dHNT0W6N7jZ9raOzAdCwBgQCIWV8WnuaL5UFwjJJT0fLcoy5IujI5r1vZ159FT7R4cmY4GAKijeDymPMUVTYjiGkFhKD3bKcq2pPGJSSXl6fbDJ9o/KpiOBgCog3g8pnKR4ormQ3GNsCCUnmwX5diWpqdnFAvKuvXgiQ4LRdPRAAA1FI/F5OU5nIXmQ3GF/CDUo62CXNvSpYuzsrySbj14rHyxbDoaAKAGLMvS6w1kQHOhuOIHXhDqwWZBMcfS/NwlBaWCbj14omK5YjoaAKCaLMt0AuBMKK54S8UPtbhRUNyx9cn8nCrFvG4+eKJyxTMdDQBQBRbFFU2Ke1zxXmU/0L2Ngl4WHF1fmNflyVHTkQAA1UBxRZOiuOKDil6gu+t5FWNZfXppynQcAMBHsnj6R5PiJxcntnlU0W6Q0I25adNRAAAfgxVXNCmKK05lK1/Rlh/XZ5dnTEcBAJwRe1zRrCiuOLXtfEUbFVefzc+ajgIAOIOQ3oomRXHFmewUPK2XHP3sykXTUQAAp3C+v1f7JaZmoTlRXHFmu0VPK0VbP1+4ZDoKAOAE2rMZnR8Z1qu9kukowJlQXPFR9oqeXhWkL67OiXeeAKBxxV1Xn1ya1r31vOkowJlRXPHR9ou+XhxJX3wyx4Z/APgJzw+0tJXXg7VDLW3l5fn1f5vekvSzq5d0d6OokEmvaGJMzkJVHJQ8PZejLz+Z09/8/R0FPDICiLpQWlw70OLqgSxZ8sNQjmXpmxe7mhnIaaY/p3q9VXV9blpP93yVDZRmoJpYcUXVHJZ8Pd0P9OUnc7JZeQUQcd+XVj+QvCBUGL7+6AfS4uqBFtcO6pJj+sKwDpTQQYmx3Wh+FFdU1VHZ1+O9QF9euyzbprwCiCbPD34ore/yfXn1gtqugPZ3daitq1urB+Wafh+gXiiuqLp8xdejXU+/98llOTY/YgCiZ3m3KOsD+wAsWVreKdYsQyaV0PTkmB5t1e57APVGq0BNFCqBHu56r1de2TYAIGKKXiD/A3v9/TBU0avdiuvc5JjurHGDAFoLxRU1U6gE2i1basukTEcBgLpKuracD7xodyxLSbd2T8OWbSvgnCxaDMUVNXVUCZSjuAKImMGOpEId3xpDhRrsTNYsA9cTohVRXFFThYqvbCZjOgYA1JXr2JoZyMl5z7OsY0szAzm5NTwHYFk8xaP18FONmiqUfWXTrLgCiJ6Z/twP5dW1LVnW64/fl9aZ/lxtA1Bc0YIYQICaCiXZjmM6BgDUn/W6oE70ZrS8W1TRC5R0bQ12Jmu60vrDt+dWF7QgiitqjrerAESZ69ga6U7X9XvGY64qnMxCC6JRoOZ41Q8A9ZVOxlXyKK5oPTQK1Jxls1UAAOoplUio6FNc0Xoorqi5ohcolYibjgEAkZFJJlWq4XADwBSKK2qu4IXKpWt3VyEA4E3pVFLFim86BlB1FFfUXL4SKMddrgBQN8lEnBVXtCSKK2ouX/aUy9b3RC0ARBmHYtGq+MlGzVX8UIk4e1wBoF4ormhV/GSjLngQBYD6cB1HjhszHQOoCdoE6oIhBABQH9fnpvV4u2Q6BlATtAnUB3e5AkDNDfV1K6+YihzMQouiuKIuQkkO2wUAoGZcx9Hk6IiWdlltRetyTQdANOQrr+9y3T3Mm44C4AM8P9DyblFFL1DStTXYkZTr8MKz0X06N63FLUorWhvFFXVR8kMlE3GJ4go0rlBaXDvQ4uqBLFnyw1COZembF7uaGchppj8nWaZD4l2G+rpVUEzFCsUVrY2X0KgLP5RiLq+TgEb2fWn1A8kLQoXh649+IC2uHmhx7cB0RLwDWwQQJRRX1IXnB4rFKK5Ao/L84IfS+i7fl1cv4NBPo2GLAKKE4oq6qAQhK65AA1veLcr6wD4AS5aWd4p1SoSTGOr9fouAbzoKUBcUV9SF5weKs+IKNKyiF8gPw2O/xg9DrllqIK7jaHKMLQKIFoor6sJjxRVoaEnXlmMdv+LqWJaSLk8bjYItAogiHoFQF34QyqW4Ag1rsCOpUMevuIYKNdiZrFMiHIctAogqiivq5gOLOQAMch1bMwM5ve+6VseWZgZychkkYhxbBBBlLIGhjmiuQCOb6c9J0lv3uIYKf3ePK4y7dmlKD9gigIiiuKJ+WHIFGpv1elV1ojfz5uSsziQrrQ1isLdLRSuuAoMGEFEUV9SNRXEFmoLr2BrpTpuOgZ9wHUdTYxf07SoTCBFdvIRGHVFcAeCs2CIAUFxRT6y4AsCZDPZ2qWQlVOAWAUQcxRV1w1YBADi977cIPN9lahlAcUUdUVwB4LTYIgD8DsUV9cOKKwCcymAPWwSAH6O4om7orQBwcq7jaGqcLQLAj1FcUT+eZzoBADSNrrasNgqB6RhAQ6G4oi7ScUd7hwemYwBA09g5OFQ2xltVwI9RXFEX/ZmYlpbXTccAgKZR8Xy5Vmg6BtBQKK6oi5QrHeQLpmMAQFMJfLZYAT9GcUXNWZL8Stl0DABoOoHvc5Eg8CMUV9RcVyau1Y0t0zEAoOnk8wVlE67pGEDDoLii5nrTjl6tU1wB4KRSibh+duWikm2dOiyzXQD4Hi/jUHN24MvzuTwbAD4k5jq6MjWmWDqrx9tFVXzOBgA/RnFFTcUcW4UCD7wAcBzbsnRp4oLaOzr0ZKeswhGPm8C7UFxRU/3ZmF4svTQdAwAa1tTIoAb6+/Rst6KX6xRW4DgUV9RUe8LW7T0GDwDATw31dWvywnm9OvB0a43CCpwExRU1FXgV0xEAoKF05DKan5nQVjHUtxRW4FQorqiZtmRM2zs7pmMAQEOZGRvR7fWSmIkFnB7XYaFm+jKOllY3TMcAgJoZHx6Q6zin+jWWbVNagTOiuKJm4laoQomJWQBa06eXpjQxekFtmdSpfp1l8dQLnBX/9qAmbEuqlEumYwBA1bmOrV9cm9emF9eTrbyy6eTpfgObp17grNjjiprozcS1vPbKdAwA+KDLk6PyfV/be/vaOThSufL+SVXpZEKfXbmk+5tFFb1A6bijnracVrd2FYahgiB8/TF892YAx7YVsmYEnBnFFTXRlXL0cJODWQAal2Pb+uLqJS0dBvIkdZ7r1MiorZgVKgh8KQhUKBa1s7ev7f1DpRJxXZya1K21vPzvimmh7MvtatOVy3OyLUuWJMuyZFmS9d33CcNQliUplEJJq4dsoQLOiuKKmrAC770rDgBgWiIe088W5rS4VVLRCyRJR2Vfqz+5djruJJTrPKfJfluWpJurR298PpT0ZLtYn9AAKK6ovlTM0cHhoekYAPBOuXRKn16e1e31grzg+BfYZT/Q1lFZW0fHfhmAOqG4our6szE9fbxuOgYAvKWvs10zk+O6uZbXBzorgAZEcUXVpV1p7zBvOgYAvOHCuT4NG7rKfgAAIABJREFUnBvUrTUen4BmRXFFVVmSggpjXgE0lovj5xXPdWlxkxGrQDOjuKKqYo6tfJGDCgAax6eXpnRkJfV8h8cmoNlRXFFVZT9QMhszHQMAZFuWfr5wSa/y0m6RK6iAVkBxRdVZ1unmdgNAtcVdVz+/OqeHOxXlK77pOACqhOKKqrNs68NfBABVEnMdJeMxJeNxJRNxpZIJDfb36e5GUWU/MB0PQBVRXFF1lsU4QwDVNTrYp/7eHlmyJMuSZduvP1q2vCBU2f/ur0AqVHx9u5YXM1CA1kNxRfXZFFcA1ZGMx/Tp3Iy2ypYWd9inCkQdxRXVZ70ejchiB4CPMTUyqL7+fj3YLKji84gCgOKKGih5gZKJuAolVkcAnF46mdCnc9NaK4S6w7AAAD9CcUXVlfxQmWSC4grg1GbHzquzu1t3N4vymckK4CfYjIiqK3qhMqmk6RgAmkgundRX1xdUSbTr3nqB0grgnVhxRdUVKr7a0xRXACdzeeKCsh2dur1REH0VwHEorqi6YsXXYDZlOgaABteezWjh4qSW9jy93CiYjgOgCVBcUXVBKDkO07MAvJtlWboyNaZEtk2311llBXByFFfUBEMIALxLMh7Tzxbm9GSvov1NVlkBnA7FFbXBEAIAP2Fblj5fuKTbG0V5LLMCOAPaBWrCsizTEQA0mBvzM3q0U6G0AjgziitqwmLFFcCPzI6d147n6qjsm44CoInRLlATXiDFXXaiAJAGujuV7ejW+mHFdBQATY7iipooeKHSybjpGAAMyyQTmpoY1aMtDmIB+HgUV9RE0QuVTjKEAIgyx7Z148pF3V2jtAKoDooraqLo+cowPQuItM+vzGpxqyQ/5DAWgOpgEyJqouKH6kiwVQBoZd3tOY0O9mtzZ0+be/s6KpR++NzlqVGtFy0VKhzGAlA9FFfURE/a1crSlukYAGpoa+9A2XRKn1yaVMkLtZcvKvQ9WWGofOhqc6doOiKAFkNxRU20xy3d3jswHQNAjT1fWdfzlXWNDfXr/OCAnh0G2i/5kjzT0QC0IIorqs6S5FfKpmMAqKOnr9bkOo4SmS6pxPYAALXB4SxUXXc2ruX1TdMxANRRPOaqv79fG0fc1QqgdiiuqLrelKNX6+xvBaLk00vTerDJnlYAtUVxRdVZgSc/CEzHAFAn53q6dBS6Kvv8ew+gtiiuqKpcwtXO7p7pGADqxLYtTY9f0NJu6cNfDAAfieKKqhrIxvRsec10DAB1sjA9oUfblFYA9UFxRVXFrECFEjcKAFHQns0ols7qqMwtAgDqg+KKqok7tgqFvOkYAOpkYXZSj7YKpmMAiBCKK6pmIBfXs5crpmMAqIOutqz2K1IQmk4CIEoorqiaXEzaOTgyHQNAHWzvHyobM50CQNRQXFEVtiV5FQ5oAFGyv7+vdNwxHQNAhFBcURU9mbherW6YjgGgju4/faGR9rjpGAAihOKKquhJO1re2DYdA0AdlSueLK8s2zKdBEBUUFxRFaFfURBySgOImkdLLzXUnjQdA0BEUFzx0dqSrra2d03HAGDAxs6+2jmkBaBOKK74aAPZmJ4zLQuIrI2tLbUnXdMxAEQAxRUfzZWvUsUzHQOAIY+WljXcxrIrgNqjuOKjJFxb+SPubgWizA8ClYsFuZzSAlBjFFd8lHO5uJ6+WjUdA03Mti31dbarPZtWIsbbzc0qXygo7vKUAqC2eJbAR8m40t5h3nQMNKFkPKaZ8wNy7VCvVtbUEY8p1damZCIhy7YkWbJsW5L1+j+WpXLFV7FcUbHiqVSuqFCuqFgqq+L5pv9xIi+XzerVDn8OAGqL4oozsy2pUmZaFk6nI5vW5FCfSsW8bt6+rXyheOJfG4/FlEomvvsrqZ5UUqnOTiUScUmWLMuSLOuH/x7q9V2j35fdYrmiYqmiYrkszw9q9Y8YSbbjSqK4AqgtiivOrC+b0MuVF6ZjoEmkk3H9u58vKBFz9eDZkhzH0dW5i9Ib2yKtH/5v+OO/Y0nhjz73NusnnwgVhqEsy1JbOqm+rjalEgklE/EfPu4eHOl//fNfVvWfMapcx5FvsU0AQO1RXHFmXSlbi1vc34qTmRzq1/bevv7q5kOFYcjAihbS19WunQKrrQBqj+KKMwu9ikLKB05oqLdTD16syg94i/5jeH6g5d2iil6gpGtrsCMp1zG72tnf3aWXhYrRDACigeKKM2lPxbSxtWU6BppEeyalrvacnv/6tukozSuUFtcOtLh6IEuW/DCUY1n65sWuZgZymunPvW8fRc0lkwlV8tzlDKD22JSEMxnIuFpa2TAdA01ibLBXz5bXORD1Eb4vrX4geUGoMHz90Q+kxdUDLa4dGMtmOayBAKgPiivOxJGvsscKC05mcnhAT1Y2TcdoWp4f/FBa3+X78uoZ2IaRTiZU4vUIgDqhuOLUUjFHh4eHpmOgSXTmMkom4lrZ3DEdpWkt7xZlfWAfgCVLyzsnv1qsWvq7O7SV52AWgPqguOLUBrIxPX3JtCyczNRwvx48XzYdo6kVvUD+Bw5C+mGoolf/pc+ezg7tFzmYBaA+KK44tbQrHeQLpmOgScyODevBC17ofIyka8uxjl9xdSxLSQMjV91YXAGXiwCoE4orTsWxLZVL9X87Es2puz0rz/O1y1jgjzLYkVSo49thqFCDnck6JXrNkmQ5Tl2/J4Boo7jiVPqzcb1YWTMdA01ibmxId54wXe1juY6tmYGc3nddq2NLMwM5uXZ9H9I7chkdlFluBVA/FFecSmfS1hrTsnBCs2Pn2SZQJTP9uR/Kq2tbsqzXH78vrTP9ubpnGujp0naB20UA1A+X7+FUgkrlA29YAq/1dbZp/zCvQqlsOkprsF4X1InezJuTszqTdV9p/V57W04rOxRXAPVDccWJdaZjWt3kLk6czLWZUX1977HpGC3HdWyNdKdNx9DliQsqhK4krsICUD9sFcCJ9WdcvVhlWhZOZmxoQE+W+XlpNbZt6ecLF1WK5/R8t2Q6DoCIYcUVJ2YHnjyf1RV82LmeTm3s7Mk3MMkJtZNKxPX5wiU92CorX+HuVgD1R3HFiaTjjvYPmJaFk/liflp/c+uB6Rioor7Ods1OTejWel4+F7cCMITiihPpSLraWGZkJz7Msiz1dbVreYOfl1YxNTKozp4+3Vw9Mh0FQMSxxxUnsp2vqL+7y3QMNIHZkXN6vrJuOgaqwJJ0fW5ablu3HmwyLQ+AeRRXnEjRC5TJmD/JjMaWTSX16cVx/dW3i6aj4CPFY65+cf2K1iuuVva50gxAY2CrAE7MdmOmI6CB2ZalhYkhPVp6pf0jVueaWUc2o6uXpnV3o6iyzwE7AI2DFVec2EE5UEeOVVe829T5AT1++kx7ea5IamZDfd26ODutb1fzlFYADYfiihPbzHsa6usxHQMNKpVw1d/Xx92tTcx1HI1fGNG99TwT8gA0JIorTixf9tWWq/88dDQHx7YVi8dVKnO/Z7O6OjuhR9tF0zEA4L0orjgV22FbNN4jlIKQdbpm1Z7NyE6kVaiwPQBA46K44lSOPCmXSZmOgYYUyjIdAWd2ZWZCj7Y4VAegsVFccSrsc8X7sNjavMYG+7VeCMVALACNjuKKUzkseepsZ58r3iXkQE8Tcmxb54cHtXbIXa0AGh/FFadmO9znindgybUpXZkZ16MtrjAD0BworjiVpGurXOLUMd4WSuxxNagzlzn1r8mlU4qlsspX/BokAoDqo7jiVGZ6kvr7e49Mx0ADslhxNeraxUn9w+tXlErET/xrrl6c1OMtXogCaB4UV5zYcHtCj5+/kOezOoO3hd/9BTN+eeu+PNvVJ/NzujQ+8sGvHxno1VZJ8nnBAaCJUFxxInHHVpvj6+XapukoaFhsFjDpqFBS/mBfT3eKKsRy+gc3FtTVnn3n19q2pdHzQ1re50AWgOZCccWJTPck9fWdRdMx0KBcx5bn+dRWw24+eKLJrqR2Cp5urhU1Njap63PTcp03H+qvTI3pyQ6lFUDzobjig/qyca2urqlU8UxHQYOKua7KFYqQaY5ty/7u1UMo6fF2Qa+Kjr78dEEjA72SpEwqoWS2TYdltvwAaD4UVxzLsS31p6RHL5ZNR0EDi7mOyuWK6RiRZluWfnZ1Tnc33px+VagEurNe0MXv9r1evTilhxzIAtCkKK441kRXUr+9+8B0DDS4uOuqVGbF1aTPrszq0U5FFf/Nw1aWJV3uT+kvvr6lod5u7VVs+YzIAtCkKK44lqNQRwUuJ8fxYjFX/d1d2s+zkmfC5alRbZUdHb3j7f+5vrR+e3tRpXJFk2Pn9XKPf58BNC+KK47HaRucwFBPpwYG+vXw5ZrpKJFz4VyfnFSbNo7e3qox05PSg8dPtX+U1+XJUT3ZYTsHgOZGccWxLJorPmC4r0s35ib1J7+8aTpK5HS1ZTU4OKTnu2+voo52JrW6sqz17V2lEnFl2jt0UOKAJYDmRnHF8SyKK96vtyOn/+AX1/WH/+rPFXKRfV0l4zHNz07r/kb+rc+da4ursL+l5yvrkqRPLk7p4Wbhra8DgGZDccWxuFIe79ORTes//ic/1//0r/9CZY+VvHqybUufL1zSnfX8W9PKutMxJby8Fp++lCSd6+nUYeDI40AWgBZAccWx/CCU4/Bjgjfl0in9p7//pf73f/NLHRY4kFVvP7tyUQ+2y2+V0VzCVW/c1zf3H0t6fUXW9PgFLb1jKwEANCMaCY4VhJLjOKZjoIFkUgn9868+1f/7q2+1tr1vOk7kXJke11rRVqESvPH3kzFHo222fnXzniQpnUzoqxsLerBFaQXQOlzTAdDY/CCUa9viqQ+SlE7E9fufzevW4yU9frVuOk7kjA0NKExktfWTK61c29Jsd1x/9fVNhXq9PWBqfFS31gvc2QqgpVBccSw/ZKsAXksl4vrq6ozWtnb1zcMl03Eip6cjp76BAS3+ZDKWbUmX+1L6229uy/MDzU1cUCLXoZurbx/aAoBmRyPBsfxQctkqEHmJeEw/uzSmYqmsX959bDpO5KQScV2annqrtErS5f60vr59T57n64urcyrFc3qyzb5jAK2JFVcc6/UeV17fRFk85urG7KiCINQv7z1VwFvPdeXYtj5fuKRb62+voF7sS+nug0cKJf3i+oLubxZV9IK3fxMAaBEUVxzLDyXXprhGVcx1dGNmVL7n6dbzVZXKTF6qt58tXNL9zdJbe1XHu5J68eKFkomEZqYmdXMtL15TAGh1FFccKwgl12WrQBS5jq3PZkd1eHio9YOi9o64wL7ers5OaDkfvrWKOtQW18H2prrb26VUTnfW2M8KIBpYSsOxXt/jSnGNGse29dnFca2ubyjvhVrZ2jUdKXJymZScVE47hTeHO/RmYkr6BQ30dOrASuv5DvtZAUQHxRXH8oNAMZeF+ai5MjGsp8+eK9feoYcv10zHiaTz/b1aPSi/8ffako5G213lcjk93PW1XWDrBoBoobjiWH4gOTYrrlFzWChpYW6Wa68Mam/L6ajs//C/UzFbX45168iz9O1ankNYACKJ4opj+UHAHtcIWt3ZV29nu+kYkWY7v3unI+bY+r3xbt1Z2dPd9bxCDmEBiCiKK47lh6FcrsOKnIOjgmRZyqaSpqNEUlsmpcMfbW29NJDT3z3f0dIuM+wARBuNBMficFZ0rW7uqKstYzpGJA0P9Grz6Hf7V799tae9onfMrwCAaKC44livBxBQXKNobXtX3e1Z0zEiqT335v5WAMBrFFd8kGU6AIxY3d5XT3vOdIxIst2Y6QgA0JAorvgwi+oaRZt7B+psY8W13tqzaR1WOH0FAO9CccUJUFyjKAhCFcsVxbhVoq6G+3u0ccT9rADwLhRXfBi9NbJWt3bUxaprXbXlcsqzvxUA3oniig+yaK6Rtba9r25uFqgr9rcCwPtRXPFh9NbIWt/ZV09Hm+kYkdGeTeuwzP5WAHgfiitOgOYaVYVSWS7XodXNcH+vNvLsbwWA96G44sO4VSDSKp5X05cu/HT9Tlsuy/5WADgGxRUfRLGIts29Q7Xn0jX5vR3b1rXZiZr83s1m8vygDn1WtwHgOBRXfBgrrpH2cmNbsRptF0gnE4rF3Jr83s1kfHhAua5evdgrmY4CAA2NZwycAMU1yg6OCjqo0e+dTsZl29FeZbxwrk8dPf16sl00HQUAGh4rrvgweitqJJ1Kyraj+wM23N+tvoFBSisAnBDFFR/EPa6olUw6JSuiW1HO9XRpaOi8Hm4VTEcBgKZBccWHRbRYoPZSiYQqfmA6Rt31d3VodPSCFjcprQBwGhRXfBC9FbVi247CMFoX7vd0tGliYkz31vOmowBA06G44li2JQVlTjqjNizbUpQ2UXe1ZzU7NaG7a5RWADgLiiuONdKR1OLTF6ZjoEVZlh2Z3tqezejyzJTuUFoB4MworjhW1g21vV+ry5AQeZYtOwJ7UXKZtBYuzejWal7R2hgBANVFccV79WXjerG8YjoGWphl2zryHc1cGDYdpWYyqYSuzc3q1toRpRUAPhLFFe/Vn3b0fGXDdAy0qEQ8prIfammvpHhbly6OnzcdqerSybhuzM+9Lq20VgD4aBRXvFM24Wh7Z8d0DLSwdCKuovf6KqwXeyXZ6Q5dnrxgOFX1pBJxfbYwp1vreQWUVgCoCoor3mmkPa7FZy9Nx0ALSyeTKvq/a3Sv9svyk226MjVmMFV1JGKuPr86p9trBfm0VgCoGoor3hJzbJULeXm+bzoKWlgmnVSp8ubwgZX9ssrxrK7OjBtK9fHirqsvPpnXnfWCPEorAFQVxRVvGe1M6N6T56ZjoMXFXEdJ9+2HoNWDso7stK5dnDSQ6uO4jqMvPpnTnY2iKj6lFQCqjeKKN1iWFAsrOiowdAC1defxkmKlPV3sS8ux37wSa+Ooon0l9eWnV3Tj8oyGertk2419bZZj2/ry2mXd2yqrHMExtgBQD67pAGgsw+1JPXr+zHQMRMTdJ0vKrKzp2qVprRVCrR9Wfvjc5lFFm0eSY1nq6R3S5yMjsgJPR/m8Xqysa3v/0GDyN9m2pS+vXdbiVlklj9IKALVCccUbOmKhbm3vmY6BCDkqlPSXX9/S1MigLvf3a3GzqMqPViz9MNTaYVlr3/XUpJvQ8OiELsYtBV5F2zu7WlrdUKFUrktex7bVlkmpLZtWey6rVDKpZCKhB9ulH25JAADUBsUVP+hOx7S8tm46BiLq4dKyllY39OnctHYrMS3vv3u7StELtLRb/OF/tyU7NXepV3ErkF8pa3l9Uyub2/I+4u36TDKhtkxK7bmcctm0bMeRZTuybFuhLB1VQh1VAq2WPJV3A0mFM38vAMDJUVzxg3NZV3+9uGY6BiKsVK7ob/7+jkYGenXl/LAebBU/uIq5X6xov/h6i4FtSd3d53RjeFhW4KtQKOjF6po2d98cWxxzne9WTTNqz2WViMdl2bYs25EsW0X/dTE9KAdaO/AUhr4kbtkAANMorpAkpeOO9vf3FTLeBw1gaXVDK5vb+uTilMp2Us92ih/+RZKCUNo4LGvju20FcSem/vNjmpm0FXieQsuSZTvyQ+moHOioEuhVyVMlH0gKJHk1+2cCAHw8iiskSRfa4/r62wemYwA/qHi+/u7WfQ10d2phYlQPt0vKl0+36ln2A73aK+lVjTICAOqL67Ag17YUlIsqe6w2ofGsbu3oL3/zjc7FyproSqmxL8UCANQSxRW6wMABNLggCPX1vUd69vSxrvSn1JZ0TEcCABhAcY04S1LSCrR/xKloNL6tvQP9xa+/UUdY0HhXwnQcAECdUVwj7lxbXE+X2AGI5hFKuvnwqVIOmwYAIGoorhHXnbS1vLltOgZwKh25tH40ZAsAEBEU1whrT8W0vrllOgZwaiPn+rV2RHMFgKihuEbY+Zyrh8/ZJoDmk81kVKwwEAAAoobiGlHJmKOjo0MFDBxAk7EtS6HNFdQAEEUU14ga7Yjr3mOuwELzGejp1Hbx+DGwAIDWRHGNIMeyJK+sYpk9gmg+Q/292jwsm44BADCA4hpBI50JLT5ZMh0DOJO466ojxVYBAIgiimsEZZxQOweHpmMAZ/LX39yRU9jRfH9a6RgTtAAgSiiuEdOfjWvp1YrpGMBHefD8lf72t9+qL1bSbG9KMYYRAEAkUFwjpi/taGl1w3QM4KN5fqBv7j/Wt7fvaqLN0nhXUtRXAGhtFNcIySVcbe0wJQutpVAq65ff3tPzp0+00J9U0uVhDQBaFY/wETLSHtPi05emYwA1sbV3oHuPn6kjHTMdBQBQIxTXiIg7tkqFvPyA+y/Rug4LRaXY7woALYviGhGjnQndZeAAWly+WGarAAC0MB7hI8C2JDesKF8smY4C1FQYhpJ4VwEAWhXFNQKG25N6+OyF6RhAXYRshwGAlkVxjYD2uLSxs286BlAfFFcAaFkU1xbXk47p1cqa6RhAXaQScbnxuOkYAIAaobi2uIGcq6evVk3HAOrixvys7m8UTMcAANSIazoAasOxLJ3vSGhnZ0eh6TBAHcxPjenFgS8v4CceAFoVxbXFZOOOzrfHFVRKevj0ibb3D0xHAmqup6NNiWy7Xmyx2goArYzi2gIsSYNtCXUlLW3v7Og3375SxfNNxwLqwnUczU1P6NvVvOkoAIAao7i2gFwypnjlUH95+4npKEDd3bg8rcUt7igGgCjgcFYLOChWFE8kTMcA6m7i/DnteK6KFd5hAIAooLi2gFCS48ZMxwDqKptOqr9/QKsHZdNRAAB1QnFtEYFlK+Y6pmMAdWFZlj6dm9X9Dfa1AkCUUFxbxFbBV39Xh+kYQF1cnZ3Qk92KuPkKAKKF4toitvMVDfR2m44B1Ny5nk6F8YwOSp7pKACAOqO4tgg/CBVj1CVaXDzmampsVM92iqajAAAMoLi2EMtxZVmW6RhAzXx2eVb3NymtABBVFNcWslcM1N2eNR0DqIlLEyNaLUplPzAdBQBgCAMIWshWvqLBvl5t7jLmFa3BkjQ2NKChc/3aKATa5OorAIg0imsLKXqBMm0p0zGAj+bYtmbGhtXd2aWVQ0+31tkeAACguLYcm0EEaGKJeEyXJi4onclqaa+i5fWC6UgAgAZCcW0xeS9ULp3SQZ4nfDSPXDqlS5MXZMWSerZbVvGIn18AwNsori1mM+9psK9bi89emo4CHMu2LPV1tWtiZFgluXq8U5QXUFgBAO9HcW0xB0VPQ51tpmMAb8imkuruaFNPR5tiibhs21VoOdor+bq7XVIYVkxHBAA0AYprC7Jd/lhhRtx11dWeU09nu7KZtCzbkeU4KlRC7ZUC/f/t3dlTW+cdxvHnLJKQEEhC7JTVjl3b8dLGSZrJTHrXy/6p/Q/ai6SdNlvr2MZ2bRMCYZXQgnbpbL1I4yVe4jiIg46+n0sdCT3AMPPwO6/ed6vtyG16krywowIABhANJ4LcwFQiZqvrcCTmsLm0tiTf91UsV1WtN+UHQV/exzQMZcdGNZnLKDuelmXFZFiW3MBQreur1HG1U6GgAgBOFsU1gkptT7OTOW3tF8OOglNmmobM9KTmxyZ0MW7KCHz5nqtmq6VCqaLScUOu98vK5GgyocnsuPLZjOLxuAzLlgxL9Z6nWtfTo2NXgRxJ3O4HAPQXxTWCKq2ezuUnKK5D6P7Gtj6+mdOdw+5zj4/YSeXmxrWyYspSIN935XS7KlaqKlZqand7/7/Nn9ZkLqt0KiXDMmVY9pPb/Nvc5gcAhIziGkF+INmxeNgxEAI/CLS3f6CpsUkVm08noB3X10G9q4NnDlWzTVuZ3Jwuzy0oYRlyfT29zV/9saAyRQUAnB0U14gKTEumacj3+7PGEWfXxs6BPrk581xxfRnXD1Rq9lRqnlIwAAB+JTPsAOiP446vqWwm7BgIyaPNbS1mE2HHAADgRFFcI+qo5WhuOh92DJyy2XxOy3NTKlZrytiBTCPsRAAAnByWCkSU4/lKJpNhx8ApW16Y1ZFj6+b8gpJxS4tZS1sVTqMCAEQDxTXCLMsKOwJCwLpVAEBUsVQgosZHbJUrlbBj4LQZrA0AAEQXxTWilsZjerD5fdgxcMoMUVwBANFFcY2gdMJStVplK6xhxMQVABBhFNcIWsnEdf/b7bBjIAz0VgBAhFFcI2Y0bqlWO5bn+2FHQQhYKgAAiDKKa8SsZOO6t7EVdgyEhaUCAIAIo7hGSDJmqlmvyfWYtg4viisAILoorhGylktonWnrcGPiCgCIMIprRCRjllqNhhzXCzsKQmRQXAEAEUZxjYjVXELrj78LOwZCZEhiAzQAQJRRXCNgxDbVbTXUc92woyBEtm3JY+9eAECEUVwjYHUiobuPNsOOgZDFbEsuxRUAEGEU1wGXsE057Za6DtPWYWdblthQAgAQZRTXAbeaY9p61sRsK5RNqWK2JTdg4goAiC477AB4e3HLlNdtq9Nzwo6CZ/zut+cUG0mp1+loY3tH5VrjVN7Xtix59FYAQIRRXAfYai6h2+v3wo6BnzJMrRfask1DiyvndCkWqF6v69HWrtrdXt/e1rZtlgoAACKN4jqgYpYhOZ2+FiG8nR/2Ug3k+oG2qh1JUjKW1NUrlxWTp8PCkTb3DuX5v65ljo8mNZnLKJ/JyIrZsu2YHpe7J/AdAABwNlFcB1QuGVOpWgo7Bt5Q2/H08KgtScql8/rw9zPynZ6+29nTQan62tfGbEv5zLimJjJKpVIyTUuGZanZC3Tc9bTRcOQHriQ+oAcAiDaK64AqNHq6PDOjUvVYlXoz7Dh41s+cXlVpOaq0HJmGNDu3pPOrK2o3G3q4vSvTMJTPjj+ZopqWJTcwVev6KrYddSqeJE5HAwAMJ4rrALtfaOnapQv6/NZdPqA1gPxA2qt1tVeT4lZM589fkB+IKSoAAK/AdlgDLJC0Xmjrw+uXZXJG/ZlhvMVmWD3P12b0NGbuAAAE/0lEQVSlo61qR9W2I84RAADgRRTXAef6gR6VHf3h+qW3/hqjIwmNjiROMNWQ438IAAD6guIaAS3H02HH1LULay+9nhsb1ZVzS8qOjb5w7dLaoj66dlE9l1vSJ4fmCgBAP7DGNSJKLUfjE2NampvW9n5B2XRK55YWlEylVO9JRy1Xy6s5XYlJrtPVQbGs6xdWdNxo6a9f3lHAiUsnh2UbAAD0BcU1ImbSMc2PxTWqSS3Oz6rpGtqu9eQ0Ok+e0+z9MFU1DenG2oq2D0u69WAjrMiRRW0FAKA/KK4DzjSk9xazSsZMbZdb2qsF6nmv34T+fD6pra3vtbGzf0ophwwTVwAA+oLiOuCCQLq1W5PzBmd9Gob07nRKDzc2dVh+/ab3AAAAZw3FdcAF0huVVkn6YHFc//zPumrNVn9DDT0mrgAA9AO7CgyRzXJbNy5f0NrCbNhRoo3eCgBAX1Bch0ih4ej2YVvW+JQ+ef+Gzv9mLuxIkZS0TY3Yv/xPa248rvGE1YdEAABEA8V1CBWbPd0+bEvpvD55/4bmpvJhR4qUT7/6RkspX8vZkTd6/kw6rmvTI2oU97WYifc5HQAAg4s1rkPsqOXIl5RKxMKOEimu5+uLu//V3OSErq8t62Gpq7bjvfC8fCqm+TFL2zv7+vReQZL0m9lpGfph7TIAAHgeE9chMp8Z0ZXZtKxntmuaS9va3D0MMVV07R+V9Y+vb2sx5Wsp+/RI3WzS1rWZpIxmSZ99+Y229gtPru0cFDSZZuoKAMDLUFyHyN5xR+2eqz9dmtb8eFwxy1S33ZLPqVl943qevrjzQEf7O7o2m9LVmaQS3WN99tU3evz9i/vo7hZKmk6xzhUAgJdhqcAQGUtY6riB1vePtZpNaDk7or//+07YsYbCXrEsx3E1nc9qc/fglUfs+kEg3+mxXAAAgJeguA6RpUxcjzY2tTw/KzuW1OFRRfVW5+dfiF/MtizNTGQ0O5VXPJGQYdmq9wLVup4+up7Tp1/ffmV5PTwqazIzpWKjd8qpAQA42yiuQ8R3HRUqxypUjqV1KZlgLWU/WKapP//xfZXantb363IbjiTnyfUN39cHVy/q89sPnntdIh7TtXfWZI0k9bjEPxQAAPwUxXVIZJIxHZVKzz3W7jLR6wfP9/WXv/1LS3NTurQwr6OOr/3a0591o+upHIvp3fPLuvt4S3Hb1tULq4qnRvVtuatuvR1iegAAzi6K65CYGbV169ti2DGGyvZ+Udv7RS1M5XV1aUFVR9qpdhVIKjYcLWcz+vjGFQV2TJuVntoNCisAAK9DcR0Stjz1HDfsGENpt1jSbrGkmYmMrqwsqe6Z2qp0tFXtKmYZcjx+LwAAvAm2wxoCcdtUq9kKO8bQOywf6/CorLG4pR930nU89g4AAOBNMXEdAnPpuLY2t8OOMdSSibhuvntRh+1Adw+bYccBAGAgUVyHQDouVeqUpbC8szSv6ekZ3T9qy/WZsAIA8LYorhFnSHJ77B4QhmQirveuXNBhW1ovsFQDAIBfi+Iacfl0XPuFg7BjDJ3zi/OamZnRA6asAACcGIprxOWTtu7V6mHHGBo/TlkLHYMpKwAAJ8x41bGTAAAAwFnCdlgAAAAYCBRXAAAADASKKwAAAAYCxRUAAAADgeIKAACAgUBxBQAAwECguAIAAGAgUFwBAAAwECiuAAAAGAgUVwAAAAyE/wFnUwL7RWrnNwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 864x864 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(12,12))\n",
    "mm = Basemap(llcrnrlon = min(X[:,0])-10,llcrnrlat = min(X[:,1])-10, urcrnrlon = max(X[:,0])+10,urcrnrlat = max(X[:,1])+10)\n",
    "mm.drawmapboundary(fill_color = '#A6CAE0',linewidth = 0)\n",
    "mm.fillcontinents(color = 'grey', alpha = 0.4, lake_color = 'grey')\n",
    "mm.drawcoastlines(linewidth = 0.5,color = 'white')\n",
    "plt.scatter(Y_center[:,0],Y_center[:,1],s=80,cmap='viridis')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 186,
   "metadata": {},
   "outputs": [],
   "source": [
    "clusters = {}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 218,
   "metadata": {},
   "outputs": [],
   "source": [
    "clusters = {}\n",
    "n=0\n",
    "for item in labels:\n",
    "    if item in clusters:\n",
    "        clusters[item].append(X[n])\n",
    "    else:\n",
    "        clusters[item] = [X[n]]\n",
    "    n+=1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 249,
   "metadata": {},
   "outputs": [],
   "source": [
    "a=[]\n",
    "b=[]\n",
    "k=5\n",
    "\n",
    "for i in range (k):\n",
    "    for j in (clusters[i]):\n",
    "        a.append(j)\n",
    "\n",
    "for m in range(k):\n",
    "    for n in range (len(clusters[m])):\n",
    "        b.append(Y[m])\n",
    "\n",
    "matrix1 = pd.DataFrame(a,columns=['CENT_LON','CENT_LAT'])\n",
    "matrix2 = pd.DataFrame(b,columns=['CLST_LON','CLST_LAT'])\n",
    "matrix  = pd.concat([matrix1,matrix2],axis=1,join_axes=[matrix1.index])\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 300,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "CENT_LON   -40.3100\n",
       "CENT_LAT    -5.9995\n",
       "CLST_LON   -44.0950\n",
       "CLST_LAT   -22.5196\n",
       "Name: 0, dtype: float64"
      ]
     },
     "execution_count": 300,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "matrix.iloc[0,:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 301,
   "metadata": {},
   "outputs": [],
   "source": [
    "def haversine(lon1,lat1,lon2,lat2):\n",
    "    \"\"\"\n",
    "    Calculate the great circle distance between 2 points\n",
    "    on the earch (specifid in decimal degree)\n",
    "    \"\"\"\n",
    "    # Convert decimal degree to radians\n",
    "    lon1,lat1,lon2,lat2 = map(np.radians,[lon1,lat1,lon2,lat2])\n",
    "    # Haversine formula\n",
    "    dlon = lon2-lon1\n",
    "    dlat = lat2-lat1\n",
    "    a = np.sin(dlat/2)**2 + np.cos(lat1) * np.cos(lat2) * np.sin(dlon/2)**2\n",
    "    c = 2 * np.math.asin(np.sqrt(a))\n",
    "    #r = 6371 # Radius of earth in kilometers. Use 3956 for miles\n",
    "    km = 6367 * c\n",
    "    return km"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 306,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[-40.31, -5.9995, -44.095, -22.5196]"
      ]
     },
     "execution_count": 306,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "[matrix.iloc[0,0],matrix.iloc[0,1],matrix.iloc[0,2],matrix.iloc[0,3]]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 302,
   "metadata": {},
   "outputs": [
    {
     "ename": "TypeError",
     "evalue": "input must be an array, list, tuple or scalar",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer_return_scalar\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    516\u001b[0m         \u001b[0;31m# inx,isfloat,islist,istuple\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 517\u001b[0;31m         \u001b[0;32mreturn\u001b[0m \u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'd'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    518\u001b[0m     \u001b[0;32mexcept\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mTypeError\u001b[0m: float() argument must be a string or a number, not 'numpy.ufunc'",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-302-3c7d5ce7616b>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mhaversine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0miloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0miloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0miloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0miloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m<ipython-input-301-b5bd34d3318b>\u001b[0m in \u001b[0;36mhaversine\u001b[0;34m(lon1, lat1, lon2, lat2)\u001b[0m\n\u001b[1;32m      5\u001b[0m     \"\"\"\n\u001b[1;32m      6\u001b[0m     \u001b[0;31m# Convert decimal degree to radians\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m     \u001b[0mlon1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlon2\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmap\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mradians\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mlon1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlon2\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat2\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      8\u001b[0m     \u001b[0;31m# Haversine formula\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      9\u001b[0m     \u001b[0mdlon\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mlon2\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mlon1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/mpl_toolkits/basemap/__init__.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, x, y, inverse)\u001b[0m\n\u001b[1;32m   1189\u001b[0m             \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1190\u001b[0m                 \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0m_dg2rad\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0myy\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0myy\u001b[0m \u001b[0;32min\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1191\u001b[0;31m         \u001b[0mxout\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0myout\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprojtran\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   1192\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcelestial\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1193\u001b[0m             \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/mpl_toolkits/basemap/proj.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *args, **kw)\u001b[0m\n\u001b[1;32m    286\u001b[0m             \u001b[0moutxy\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_proj4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mxy\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    287\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 288\u001b[0;31m             \u001b[0moutx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mouty\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_proj4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    289\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    290\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprojection\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m'merc'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'mill'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'gall'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *args, **kw)\u001b[0m\n\u001b[1;32m    391\u001b[0m         \u001b[0mlon\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlat\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0margs\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    392\u001b[0m         \u001b[0;31m# process inputs, making copies that support buffer API.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 393\u001b[0;31m         \u001b[0minx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxisfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxislist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxistuple\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlon\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    394\u001b[0m         \u001b[0miny\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myisfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myislist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myistuple\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlat\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    395\u001b[0m         \u001b[0;31m# call proj4 functions. inx and iny modified in place.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    572\u001b[0m         \u001b[0;31m# a scalar?\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    573\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 574\u001b[0;31m             \u001b[0;32mreturn\u001b[0m \u001b[0m_copytobuffer_return_scalar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    575\u001b[0m     \u001b[0;32mreturn\u001b[0m \u001b[0minx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0misfloat\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mislist\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mistuple\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    576\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer_return_scalar\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    517\u001b[0m         \u001b[0;32mreturn\u001b[0m \u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'd'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    518\u001b[0m     \u001b[0;32mexcept\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 519\u001b[0;31m         \u001b[0;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'input must be an array, list, tuple or scalar'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    520\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    521\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mTypeError\u001b[0m: input must be an array, list, tuple or scalar"
     ]
    }
   ],
   "source": [
    "haversine(matrix.iloc[0,0],matrix.iloc[0,1],matrix.iloc[0,2],matrix.iloc[0,3])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 295,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "ename": "TypeError",
     "evalue": "input must be an array, list, tuple or scalar",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer_return_scalar\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    516\u001b[0m         \u001b[0;31m# inx,isfloat,islist,istuple\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 517\u001b[0;31m         \u001b[0;32mreturn\u001b[0m \u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'd'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    518\u001b[0m     \u001b[0;32mexcept\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mTypeError\u001b[0m: float() argument must be a string or a number, not 'numpy.ufunc'",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-295-005a33a76075>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m     \u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CENT_SITE_DIST'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m1.19\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mhaversine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CENT_LON'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CENT_LAT'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CLST_LON'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mloc\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CLST_LAT'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m<ipython-input-272-b5bd34d3318b>\u001b[0m in \u001b[0;36mhaversine\u001b[0;34m(lon1, lat1, lon2, lat2)\u001b[0m\n\u001b[1;32m      5\u001b[0m     \"\"\"\n\u001b[1;32m      6\u001b[0m     \u001b[0;31m# Convert decimal degree to radians\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m     \u001b[0mlon1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlon2\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmap\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mradians\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mlon1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlon2\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat2\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      8\u001b[0m     \u001b[0;31m# Haversine formula\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      9\u001b[0m     \u001b[0mdlon\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mlon2\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mlon1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/mpl_toolkits/basemap/__init__.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, x, y, inverse)\u001b[0m\n\u001b[1;32m   1189\u001b[0m             \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1190\u001b[0m                 \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0m_dg2rad\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0myy\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0myy\u001b[0m \u001b[0;32min\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1191\u001b[0;31m         \u001b[0mxout\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0myout\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprojtran\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   1192\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcelestial\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1193\u001b[0m             \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/mpl_toolkits/basemap/proj.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *args, **kw)\u001b[0m\n\u001b[1;32m    286\u001b[0m             \u001b[0moutxy\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_proj4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mxy\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    287\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 288\u001b[0;31m             \u001b[0moutx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mouty\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_proj4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    289\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    290\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprojection\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m'merc'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'mill'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'gall'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *args, **kw)\u001b[0m\n\u001b[1;32m    391\u001b[0m         \u001b[0mlon\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlat\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0margs\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    392\u001b[0m         \u001b[0;31m# process inputs, making copies that support buffer API.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 393\u001b[0;31m         \u001b[0minx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxisfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxislist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxistuple\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlon\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    394\u001b[0m         \u001b[0miny\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myisfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myislist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myistuple\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlat\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    395\u001b[0m         \u001b[0;31m# call proj4 functions. inx and iny modified in place.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    572\u001b[0m         \u001b[0;31m# a scalar?\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    573\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 574\u001b[0;31m             \u001b[0;32mreturn\u001b[0m \u001b[0m_copytobuffer_return_scalar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    575\u001b[0m     \u001b[0;32mreturn\u001b[0m \u001b[0minx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0misfloat\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mislist\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mistuple\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    576\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer_return_scalar\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    517\u001b[0m         \u001b[0;32mreturn\u001b[0m \u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'd'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    518\u001b[0m     \u001b[0;32mexcept\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 519\u001b[0;31m         \u001b[0;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'input must be an array, list, tuple or scalar'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    520\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    521\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mTypeError\u001b[0m: input must be an array, list, tuple or scalar"
     ]
    }
   ],
   "source": [
    "for i in matrix.index:\n",
    "    matrix.loc[i,'CENT_SITE_DIST'] = 1.19*haversine(matrix.loc[i,'CENT_LON'],matrix.loc[i,'CENT_LAT'],matrix.loc[i,'CLST_LON'],matrix.loc[i,'CLST_LAT'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 176,
   "metadata": {},
   "outputs": [],
   "source": [
    "# delete above"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 253,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Assign random clusters as hyperparameter initially, will be optimized by model iteration later\n",
    "\n",
    "## k: number of clusters\n",
    "## X: all sites array\n",
    "## sla: period from despatching to destination\n",
    "## kmh: kilometer per hour for driving speed\n",
    "## h: driver driving time per day\n",
    "## q: sites coverage by such policy (percent)\n",
    "\n",
    "def model_Kmeans(k,X,sla=2,kmh=60,h=8,q=.9):\n",
    "    def find_clusters (X, n_clusters, rseed=2):\n",
    "        #1.Randomly choose clusters\n",
    "        rng = np.random.RandomState(rseed)\n",
    "        i = rng.permutation(X.shape[0])[:n_clusters]\n",
    "        centers = X[i]\n",
    "        \n",
    "        while True:\n",
    "            #2a. Assign labels based on closest center: if 5 centers, then labels have 0,1,2,3,4\n",
    "            labels = pairwise_distances_argmin(X,centers)\n",
    "            #2b. Find new centers from means of points\n",
    "            new_centers = np.array([X[labels ==i].mean(0) for i in range(n_clusters)])\n",
    "            #2c. Check for convergence\n",
    "            if np.all(centers == new_centers):\n",
    "                break\n",
    "            centers = new_centers\n",
    "        return centers, labels\n",
    "    centers,labels = find_clusters(X,k)\n",
    "    # So far the centers are fixed, regardless random centers changes.\n",
    "    \n",
    "    # Add each coordination to clusters, which is a dictionary {item(label), X_coordinate}\n",
    "    clusters = {}\n",
    "    n=0\n",
    "    for item in labels:\n",
    "        if item in clusters:\n",
    "            clusters[item].append(X[n])\n",
    "        else:\n",
    "            clusters[item] = [X[n]]\n",
    "        n+=1\n",
    "        \n",
    "    ### Build distance matrix\n",
    "    def haversine(lon1,lat1,lon2,lat2):\n",
    "        \"\"\"\n",
    "        Calculate the great circle distance between 2 points\n",
    "        on the earch (specifid in decimal degree)\n",
    "        \"\"\"\n",
    "        # Convert decimal degree to radians\n",
    "        lon1,lat1,lon2,lat2 = map(np.radians,[lon1,lat1,lon2,lat2])\n",
    "        # Haversine formula\n",
    "        dlon = lon2-lon1\n",
    "        dlat = lat2-lat1\n",
    "        a = np.sin(dlat/2)**2 + np.cos(lat1) * np.cos(lat2) * np.sin(dlon/2)**2\n",
    "        c = 2 * np.math.asin(np.sqrt(a))\n",
    "        #r = 6371 # Radius of earth in kilometers. Use 3956 for miles\n",
    "        km = 6367 * c\n",
    "        return km\n",
    "    \n",
    "    a=[]\n",
    "    b=[]\n",
    "    \n",
    "    for i in range (k):\n",
    "        for j in (clusters[i]):\n",
    "            a.append(j)\n",
    "            \n",
    "    for m in range(k):\n",
    "        for n in range (len(clusters[m])):\n",
    "            b.append(centers[m])\n",
    "            \n",
    "    matrix1 = pd.DataFrame(a,columns=['CENT_LON','CENT_LAT'])\n",
    "    matrix2 = pd.DataFrame(b,columns=['CLST_LON','CLST_LAT'])\n",
    "    matrix  = pd.concat([matrix1,matrix2],axis=1,join_axes=[matrix1.index])\n",
    "    \n",
    "    for i in matrix.index:\n",
    "        matrix.ix[i,'CENT_SITE_DIST'] = 1.19*haversine(matrix.ix[i,'CENT_LON'],matrix.ix[i,'CENT_LAT'],matrix.ix[i,'CLST_LON'],matrix.ix[i,'CLST_LAT'])\n",
    "        \n",
    "    # Drop duplicated site for avoiding dulicate CBM mapping\n",
    "    matrix.drop_duplicates(subset=['CENT_LON','CENT_LAT'],inplace=True)\n",
    "    matrix.reset_index(drop = True,inplace = True)\n",
    "    \n",
    "    # Processing the dataset for adding volume\n",
    "    df_v = pd.DataFrame(XX,columns=['ORG_LON','ORG_LAT','VRM'])\n",
    "    df_v.CBM = df_v.CBM.apply(lambda x: float(x))\n",
    "    df_v = df_v.groupby(['ORG_LON','ORG_LAT'])['CBM'].sum()\n",
    "    df_gpv = pd.DataFrame(df_v).reset_index()\n",
    "    \n",
    "    matrix_V = pd.merge(matrix,df_gpv,left_on=['CENT_LON','CENT_LAT'],right_on=['ORG_LON','ORG_LAT'])\n",
    "    matrix_V.drop(['CENT_LON','CENT_LAT'],axis = 1, inplace = True)\n",
    "    \n",
    "    # The center-of-gravity method\n",
    "    # Cx = Sum(DixVi)/Sum(Vi) AND Cy = Sum(DiyVi)/Sum(Vi)\n",
    "    # Parameters: \n",
    "    # Cx--重心的X坐标 \n",
    "    # Cy--重心的Y坐标\n",
    "    # Dix--第i个地点的X坐标\n",
    "    # Diy--第i个地点的Y坐标\n",
    "    # Vi--运到第i个地点，或从第i地点运出的货物量\n",
    "\n",
    "    matrix_V_gb = matrix_V.groupby(['CLST_LON','CLST_LAT'])\n",
    "    \n",
    "    # Calculating the Center of Gravity\n",
    "    def COG(gp):\n",
    "        LON = sum(np.multiply(gp['ORG_LON'],gp['CBM']))/sum(gp['CBM'])\n",
    "        LAT = sum(np.multiply(gp['ORG_LAT'],gp['CBM']))/sum(gp['CBM'])\n",
    "        return LON,LAT\n",
    "    \n",
    "    # Adding the new-COG to the clusted diagram list\n",
    "    Re_center = matrix_V_gb.apply(lambda grp: COG(grp)[0])\n",
    "    matrix_COG = pd.DataFrame(Re_center).reset_index()\n",
    "    matrix_COG.columns = ['CLST_LON','CLST_LAT','COG_LON']\n",
    "    centerList=matrix_V_gb.apply(lambda grp: COG(grp)[1]).values\n",
    "    matrix_COG['COG_LAT'] = centerList\n",
    "    \n",
    "    matrix_New = pd.merge(matrix_V,matrix_COG, on=['CLST_LON','CLST_LAT'],how = 'left')\n",
    "    matrix_New = matrix_New[['ORG_LON','ORG_LAT','COG_LON','COG_LAT','CBM']]\n",
    "    \n",
    "    for i in matrix_New.index:\n",
    "        matrix_New.ix[i,'DISTANCE']= 1.19*haversine(matrix_New.ix[i,'ORG_LON'],matrix_New.ix[i,'ORG_LAT'],matrix_New.ix[i,'COG_LON'],matrix_New.ix[i,'COG_LAT'])\n",
    "        \n",
    "        \n",
    "    # Sort distance ascending by clusters\n",
    "    m_min = matrix_New.sort_values(by=['COG_LON','COG_LAT','DISTANCE']).groupby(['COG_LON','COG_LAT']).head(1)\n",
    "    \n",
    "    # Apply closest site to the Center Location\n",
    "    def replace_COG(df):\n",
    "        test=m_min[(m_min.COG_LON == df['COG_LON']) & (m_min.COG_LAT == df['COG_LAT'])]\n",
    "        df['COG_LON']=test['ORG_LON']\n",
    "        df['COG_LAT']=test['ORG_LAT']\n",
    "        return df\n",
    "    \n",
    "    matrix_New.apply(replace_COG,axis=1)\n",
    "    \n",
    "    # Stacking LON and LAT to one array\n",
    "    Centroids_New = np.column_stack((matrix_New.COG_LON.unique(),matrix_New.COG_LAT.unique()))\n",
    "    SLA = matrix_New.groupby(['COG_LON','COG_LAT'])['DISTANCE'].quantile(q)/kmh/h\n",
    "    \n",
    "    # Calculating the SLA\n",
    "    matrix_New['SLA'] = matrix_New['DISTANCE'].apply(lambda x: math.ceil(float(x/kmh)/h))\n",
    "    matrix_New.sort_values(['COG_LON','COG_LAT','SLA'],ascending = ['False,False,True'],inplace = True)\n",
    "    \n",
    "    percentile = stats.percentileofscore(matrix_New['SLA'],sla+1,kind='rank')\n",
    "    return SLA, percentile,centers,matrix_New,Centroids_New,labels\n",
    "        "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## III. Run Model: finding conditions complying with required SLA:\n",
    "### Step1. Initialization: \n",
    "Hyperparameter: SLA limit, Tranportation speed, Working Hours, Coverage by Percent"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 254,
   "metadata": {},
   "outputs": [],
   "source": [
    "SLA = 0.5\n",
    "kmh = 60\n",
    "h = 8\n",
    "q = 0.9"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Step2. Find out proper K of clusters satisfying SLA required"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 255,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/anaconda3/lib/python3.6/site-packages/ipykernel_launcher.py:73: DeprecationWarning: \n",
      ".ix is deprecated. Please use\n",
      ".loc for label based indexing or\n",
      ".iloc for positional indexing\n",
      "\n",
      "See the documentation here:\n",
      "http://pandas.pydata.org/pandas-docs/stable/indexing.html#ix-indexer-is-deprecated\n"
     ]
    },
    {
     "ename": "TypeError",
     "evalue": "input must be an array, list, tuple or scalar",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer_return_scalar\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    516\u001b[0m         \u001b[0;31m# inx,isfloat,islist,istuple\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 517\u001b[0;31m         \u001b[0;32mreturn\u001b[0m \u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'd'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    518\u001b[0m     \u001b[0;32mexcept\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mTypeError\u001b[0m: float() argument must be a string or a number, not 'numpy.ufunc'",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001b[0;31mTypeError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-255-047e992b7769>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mk\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mrange\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m10\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m     \u001b[0mp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodel_Kmeans\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mk\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mX\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mSLA\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mkmh\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mh\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      3\u001b[0m     \u001b[0ms\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodel_Kmeans\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mk\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mX\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mSLA\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mkmh\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mh\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m     \u001b[0mprint\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mk\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'centers'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mSLA\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'day(s) covers'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mround\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mp\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'% sites'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      5\u001b[0m     \u001b[0;32mif\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mmax\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0ms\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalues\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m>\u001b[0m\u001b[0mSLA\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m|\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mp\u001b[0m\u001b[0;34m<\u001b[0m\u001b[0;36m90\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m<ipython-input-253-f03793b175b2>\u001b[0m in \u001b[0;36mmodel_Kmeans\u001b[0;34m(k, X, sla, kmh, h, q)\u001b[0m\n\u001b[1;32m     71\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     72\u001b[0m     \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 73\u001b[0;31m         \u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mix\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CENT_SITE_DIST'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m1.19\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0mhaversine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mix\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CENT_LON'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mix\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CENT_LAT'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mix\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CLST_LON'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mmatrix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mix\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'CLST_LAT'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     74\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     75\u001b[0m     \u001b[0;31m# Drop duplicated site for avoiding dulicate CBM mapping\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m<ipython-input-253-f03793b175b2>\u001b[0m in \u001b[0;36mhaversine\u001b[0;34m(lon1, lat1, lon2, lat2)\u001b[0m\n\u001b[1;32m     45\u001b[0m         \"\"\"\n\u001b[1;32m     46\u001b[0m         \u001b[0;31m# Convert decimal degree to radians\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 47\u001b[0;31m         \u001b[0mlon1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlon2\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat2\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmap\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mradians\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mlon1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlon2\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mlat2\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     48\u001b[0m         \u001b[0;31m# Haversine formula\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     49\u001b[0m         \u001b[0mdlon\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mlon2\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0mlon1\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/mpl_toolkits/basemap/__init__.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, x, y, inverse)\u001b[0m\n\u001b[1;32m   1189\u001b[0m             \u001b[0;32mexcept\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1190\u001b[0m                 \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0m_dg2rad\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0myy\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0myy\u001b[0m \u001b[0;32min\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1191\u001b[0;31m         \u001b[0mxout\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0myout\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprojtran\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   1192\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcelestial\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1193\u001b[0m             \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/mpl_toolkits/basemap/proj.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *args, **kw)\u001b[0m\n\u001b[1;32m    286\u001b[0m             \u001b[0moutxy\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_proj4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mxy\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    287\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 288\u001b[0;31m             \u001b[0moutx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mouty\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_proj4\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minverse\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    289\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0minverse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    290\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mprojection\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m'merc'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'mill'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'gall'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *args, **kw)\u001b[0m\n\u001b[1;32m    391\u001b[0m         \u001b[0mlon\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlat\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0margs\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    392\u001b[0m         \u001b[0;31m# process inputs, making copies that support buffer API.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 393\u001b[0;31m         \u001b[0minx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxisfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxislist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mxistuple\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlon\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    394\u001b[0m         \u001b[0miny\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myisfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myislist\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myistuple\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlat\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    395\u001b[0m         \u001b[0;31m# call proj4 functions. inx and iny modified in place.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    572\u001b[0m         \u001b[0;31m# a scalar?\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    573\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 574\u001b[0;31m             \u001b[0;32mreturn\u001b[0m \u001b[0m_copytobuffer_return_scalar\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    575\u001b[0m     \u001b[0;32mreturn\u001b[0m \u001b[0minx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0misfloat\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mislist\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mistuple\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    576\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py\u001b[0m in \u001b[0;36m_copytobuffer_return_scalar\u001b[0;34m(x)\u001b[0m\n\u001b[1;32m    517\u001b[0m         \u001b[0;32mreturn\u001b[0m \u001b[0marray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'd'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    518\u001b[0m     \u001b[0;32mexcept\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 519\u001b[0;31m         \u001b[0;32mraise\u001b[0m \u001b[0mTypeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'input must be an array, list, tuple or scalar'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    520\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    521\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_copytobuffer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mTypeError\u001b[0m: input must be an array, list, tuple or scalar"
     ]
    }
   ],
   "source": [
    "for k in range (1,10):\n",
    "    p = model_Kmeans(k,X,SLA,kmh,h)[1]\n",
    "    s = model_Kmeans(k,X,SLA,kmh,h)[0]\n",
    "    print (k, 'centers',SLA, 'day(s) covers', round(p,1), '% sites')\n",
    "    if (max(s.values)>SLA) | (p<90):\n",
    "        print (round(max(s.values),2),'day(s) covers', q*100, '% sites')\n",
    "        continue\n",
    "    else:\n",
    "        print (round(max(s.values),2),'day(s) covers',round(p,1), '% sites')\n",
    "        break"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
